Good Bye 2018 Solution
A. New Year and the Christmas Ornament
签到。
#include <bits/stdc++.h>
using namespace std; int a, b, c; int main()
{
while (scanf("%d%d%d", &a, &b, &c) != EOF)
{
int res = min(a, min(b - , c - ));
printf("%d\n", res * + );
}
return ;
}
B. New Year and the Treasure Geolocation
签到。
#include <bits/stdc++.h>
using namespace std; #define N 1010
int n, x[N], y[N], a[N], b[N]; int main()
{
while (scanf("%d", &n) != EOF)
{
for (int i = ; i <= n; ++i) scanf("%d%d", x + i, y + i);
for (int i = ; i <= n; ++i) scanf("%d%d", a + i, b + i);
sort(x + , x + + n);
sort(y + , y + + n);
sort(a + , a + + n);
sort(b + , b + + n);
printf("%d %d\n", x[] + a[n], y[] + b[n]);
}
return ;
}
C. New Year and the Sphere Transmission
Solved.
题意:
有一个环,长度为n,有n个点,标号为1-n,固定步长去走,求回到1的时候经过的点的标号总和多少
求出有多少个步长得到的这个标号总和不同,按从小到大顺序输出
思路:
如果步长是n的因数,那么可以在一轮走完,并且不同的因数走的路径不同,答案也不同
如果不是n的因数,那么一轮肯定走不完,到下一轮,相当于换个起点去走,也走不完,
直到起点回到1,这时候所有点都走完了,答案都是相同的
#include <bits/stdc++.h>
using namespace std; #define ll long long
ll n; ll f(int an, int n)
{
return 1ll * ( + an) * n / ;
} int main()
{
while (scanf("%lld", &n) != EOF)
{
ll limit = sqrt(n) + ;
vector <ll> res; res.push_back(); res.push_back(n * (n + ) / );
for (int i = ; i <= limit; ++i) if (n % i == )
{
res.push_back(f(n + - i, n / i));
res.push_back(f(n + - n / i, i));
}
sort(res.begin(), res.end());
res.erase(unique(res.begin(), res.end()), res.end());
for (int i = , len = res.size(); i < len; ++i) printf("%lld%c", res[i], " \n"[i == len - ]);
}
return ;
}
D. New Year and the Permutation Concatenation
Solved.
题意:
给出一个n,如此构造一个序列,将他的所有排列按字典序大小放进去
问可以选多少个起点,使得以起点之后长度为n的子段的和为$\frac {n \cdot (n + 1)}{2}$
思路:
考虑两个相邻序列如果可以有这样的起点,那么必定是他们的公共前缀里的点,并且贡献就是公共前缀长度 + 1
再考虑 我们固定一个公共前缀的长度为x,那么这样的排列一共有$(n - x)!$种
并且这些排列肯定是连续在一起的,那么就可以算贡献了
枚举公共前缀长度就好了
#include <bits/stdc++.h>
using namespace std; #define ll long long
const ll MOD = (ll);
int n; int main()
{
while (scanf("%d", &n) != EOF)
{
if (n <= )
{
printf("%d\n", n);
continue;
}
ll res = n - ;
for (int i = ; i <= n; ++i) res = (res * i) % MOD;
ll tot = ;
for (int i = n; i >= ; --i)
{
tot = (tot * i) % MOD;
res = (res - tot + MOD) % MOD;
}
printf("%lld\n", res);
}
return ;
}
E. New Year and the Acquaintance Estimation
Unsolved.
题意:
有n个点,给出每个点的度数,每个点最多去掉一个度,令$x = 去掉的度数之和$
求合法图中不同的$x个数,从小到大输出$
Good Bye 2018 Solution的更多相关文章
- Good Bye 2018 (A~F, H)
目录 Codeforces 1091 A.New Year and the Christmas Ornament B.New Year and the Treasure Geolocation C.N ...
- Good Bye 2018
Good Bye 2018 2018年最后一场CF,OVER! 弱弱的我只能做出3道A,B,D~~~~ 最后几分钟,感觉找到了C题的规律,结束的那一刻,提交了一发 "Wrong answer ...
- Codeforces Good Bye 2018
咕bye 2018,因为我这场又咕咕咕了 无谓地感慨一句:时间过得真快啊(有毒 A.New Year and the Christmas Ornament 分类讨论后等差数列求和 又在凑字数了 #in ...
- Codeforces:Good Bye 2018(题解)
Good Bye 2018! 题目链接:https://codeforces.com/contest/1091 A. New Year and the Christmas Ornament 题意: 给 ...
- Good Bye 2018题解
Good Bye 2018题解 题解 CF1091A [New Year and the Christmas Ornament] 打完cf都忘记写题解了qwq 题意就是:给你一些黄,蓝,红的球,满足蓝 ...
- CF Good Bye 2018
前言:这次比赛爆炸,比赛时各种想多,导致写到\(D\)题时思路已经乱了,肝了\(1\)个多小时都没肝出来,\(B\)题中途因为没开\(long\ long\)又被\(HACK\)了..\(C\)题因为 ...
- ACM ICPC, Amman Collegiate Programming Contest (2018) Solution
Solution A:Careful Thief 题意:给出n个区间,每个区间的每个位置的权值都是v,然后找长度为k的区间,使得这个区间的所有位置的权值加起来最大,输出最大权值, 所有区间不重叠 思路 ...
- Good Bye 2018 D. New Year and the Permutation Concatenation
传送门 https://www.cnblogs.com/violet-acmer/p/10201535.html 题意: 求 n 的所有全排列组成的序列中连续的 n 个数加和为 n*(n+1)/2 的 ...
- Good Bye 2018 C. New Year and the Sphere Transmission
传送门 https://www.cnblogs.com/violet-acmer/p/10201535.html 题意: n 个people,编号1~n,按顺时针方向围城一圈: 初始,编号为1的peo ...
随机推荐
- 查看网卡流量:nload
nload命令用于查看网卡流量,用法如下: [root@localhost ~]$ yum install -y epel-release [root@localhost ~]$ yum instal ...
- /etc/docker/key.json
/etc/docker/key.json 描述信息: This is the dockerd key for TLS connections.in web format, that docker us ...
- oracle常用管理命令
启动数据库和监听 lsnrctl start sqlplus /nolog conn sys/as sysdba startup 查看当前的实例名 show parameter instance_n ...
- php学习三:函数
1. php中的函数和js中的区别 在php中,函数的形参可以给一个默认值,若有实参的传递则函数使用传递过来的参数,没有的话显示默认值 代码如下: function showSelf($name=& ...
- Golang文件名命名规则
在golang源代码中,经常看到各种文件名,比如: bolt_windows.go. 下面对文件名命令规则的说明: 1.平台区分 文件名_平台. 例: file_windows.go, file_un ...
- mac下搭建cocos2d-x2.2.1版本android编译环境教程
首先我们先以引擎2.2.1为例子来新建一个TestJni的项目,来作为测试例. 创建方式如下: python create_project.py -project TestJni -package o ...
- 借助腾讯云CDN开启全站https及问题解决分享
版权声明:本文由张戈原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/78 来源:腾云阁 https://www.qcloud ...
- rpm方式安装 gitlab centos7
一.使用RPM安装 - 推荐 官方推荐的下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/ Tips 1 : Centos 7使用el7 ...
- 【Android】Android--Dialog
前言 对话框对于应用也是必不可少的一个组件,在Android中也不例外,对话框对于一些提示重要信息,或者一些需要用户额外交互的一些内容很有帮助.本篇博客就讲解一下Android下对话框的使用,在本篇博 ...
- JAVA内存构成详解
java memory = direct memory(直接内存) + jvm memory(MaxPermSize +Xmx) 1)直接内存跟堆 直接内存则是一块由程序本身管理的一块内存空间,它 ...