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的更多相关文章

  1. Good Bye 2018 (A~F, H)

    目录 Codeforces 1091 A.New Year and the Christmas Ornament B.New Year and the Treasure Geolocation C.N ...

  2. Good Bye 2018

    Good Bye 2018 2018年最后一场CF,OVER! 弱弱的我只能做出3道A,B,D~~~~ 最后几分钟,感觉找到了C题的规律,结束的那一刻,提交了一发 "Wrong answer ...

  3. Codeforces Good Bye 2018

    咕bye 2018,因为我这场又咕咕咕了 无谓地感慨一句:时间过得真快啊(有毒 A.New Year and the Christmas Ornament 分类讨论后等差数列求和 又在凑字数了 #in ...

  4. Codeforces:Good Bye 2018(题解)

    Good Bye 2018! 题目链接:https://codeforces.com/contest/1091 A. New Year and the Christmas Ornament 题意: 给 ...

  5. Good Bye 2018题解

    Good Bye 2018题解 题解 CF1091A [New Year and the Christmas Ornament] 打完cf都忘记写题解了qwq 题意就是:给你一些黄,蓝,红的球,满足蓝 ...

  6. CF Good Bye 2018

    前言:这次比赛爆炸,比赛时各种想多,导致写到\(D\)题时思路已经乱了,肝了\(1\)个多小时都没肝出来,\(B\)题中途因为没开\(long\ long\)又被\(HACK\)了..\(C\)题因为 ...

  7. ACM ICPC, Amman Collegiate Programming Contest (2018) Solution

    Solution A:Careful Thief 题意:给出n个区间,每个区间的每个位置的权值都是v,然后找长度为k的区间,使得这个区间的所有位置的权值加起来最大,输出最大权值, 所有区间不重叠 思路 ...

  8. 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 的 ...

  9. 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 ...

随机推荐

  1. ios 气泡聊天

    最近做的项目里面,有几个模块用到了聊天功能和评论回复的功能,使用的频率还是很高的,所以抽时间做了这个博客,希望能给自己和别人带来方便, 具体代码如下: 1,创建model, #import <F ...

  2. python2.0_s12_day11_SqlAlchemy使用介绍

    SqlAlchemy ORM ORM的解释; 简单点:对象关系映射. 需求:我们写一个主机管理,把主机信息存在数据库,一开始我们编程不熟练的时候,执行命令时候要调用数据库,会把相应的SQL语句写到代码 ...

  3. linux解压和压缩

    1.压缩命令: 命令格式:tar  -zcvf   压缩文件名.tar.gz   被压缩文件名 可先切换到当前目录下.压缩文件名和被压缩文件名都可加入路径. 2.解压缩命令: 命令格式:tar  -z ...

  4. Linux 下配置网卡的别名即网卡子IP的配置

    what 什么是ip别名?用windows的话说,就是为一个网卡配置多个ip.when 什么场合增加ip别名能派上用场?布网需要.多ip访问测试.特定软件对多ip的需要...and so on. ho ...

  5. Unity3D自己常用代码

    常需要,常查找! 自己记录下! 1. var ray = Camera.main.ScreenPointToRay(Input.mousePosition); //GameObject.CreateP ...

  6. (使用lua++)Lua脚本和C++交互(三)

    前两篇文章中介绍了C++调用lua.lua栈操作的一些相关知识. 下面说一下Lua的工具.我们下一步要用到其中的一个帮助我们的开发,其实,Lua里面有很多简化开发的工具,你可以去www.sourcef ...

  7. 如何使用css影藏滚动条

    1.单纯的一句代码: div ::-webkit-scrollbar {width: 0px;}//或者display:none 但是这代码最大的弊端就是只能在webkit内核的浏览器上进行显示,无法 ...

  8. jQuery中如何解决多库冲突问题

    方法一:使用noConflict():舍弃$,$用jQuery代替jQuery.noConflict(); 方法二:自定义变量:舍弃$,新定义一个$y变量来代替$var $y = jQuery.noC ...

  9. MyBatis——Mapper XML 文件

    Mapper XML 文件 MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会 ...

  10. [干货] 有了微信小程序,谁还学ReactNative?

    版权声明:本文由贺嘉原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/145 来源:腾云阁 https://www.qclou ...