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 ...
随机推荐
- swift - UIToolbar 的用法
代码如下: 1.声明及初始化 var toolsBar = UIToolbar() toolsBar.frame = CGRect(x:, y:, width:SCREEN_WIDTH, height ...
- GIS-005-Dojo & jQuery 事件处理
1.添加事件 dojo.connect(dojo.byId("SelectRect"), "onclick", function () { //todo }); ...
- 使用fetch-jsonp进行跨域以及参数的传递
其实fetch-jsonp的官方文档里面已经写得很详细了,连接如下:https://github.com/camsong/fetch-jsonp:但是由于它本身没有多少demo,所以自己在上手的时候遇 ...
- diff命令的参数详解和实例
diff命令参数: diff - 找出两个文件的不同点 总览 diff [选项] 源文件 目标文件 描述 在最简单的情况是, diff 比较两个文件的内容 (源文件 和 目标文件). 文件名可以是 - ...
- JS-点和中括号
今天上午做一个很low的小练习,代码写完了想要封装重复利用来着 可是憋屈啊,怎么都不对,在document.style.width这里,想把width变成参数可是用点的话,会报错说找不到点后边这个属性 ...
- 【BZOJ4401/3004】块的计数/吊灯 乱搞
[BZOJ4401]块的计数 Description 小Y最近从同学那里听说了一个十分牛B的高级数据结构——块状树.听说这种数据结构能在sqrt(N)的时间内维护树上的各种信息,十分的高效.当然,无聊 ...
- 【BZOJ4101】[Usaco2015 Open]Trapped in the Haybales Silver 二分
[BZOJ4101][Usaco2015 Open]Trapped in the Haybales (Silver) Description Farmer John has received a sh ...
- 【BZOJ3312】[Usaco2013 Nov]No Change 状压DP+二分
[BZOJ3312][Usaco2013 Nov]No Change Description Farmer John is at the market to purchase supplies for ...
- SSL安装方法二:Windows Server 2008安装SSL证书(IIS 7.5)
SSL证书CSR和CA证书唯一的区别就在:申请证书中的通用名称,具体还要看具体的项目这里只做参考.可以参考SSL安装方法一 背景:IIS 7.5 一.收到SSL证书 仔细阅读邮件 按步骤进行: 1) ...
- tortoiseSVN如何发现和解决冲突?
版本冲突原因: 假设A.B两个用户都在版本号为100的时候,更新了kingtuns.txt这个文件,A用户在修改完成之后提交kingtuns.txt到服务器,这个时候提交成功,这个时候kingtuns ...