Codeforces Round #519 by Botan Investments
Posted nblyz2003
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #519 by Botan Investments相关的知识,希望对你有一定的参考价值。
开个新号打打codeforces(以前那号玩废了),结果就遇到了这么难一套。touristD题被卡掉了(其实是对cf的评测机过分自信),G题没过, 700多行代码,码力惊人。
做了4道,本来想着上蓝名的。然后我第二题挂了,判断循环节写错了。绝望啊~~~~
比赛传送门:http://codeforces.com/contest/1043
A. Elections
这题很简单,就是说有n个人,每人投k张票,给你或你对手。第i个人会给你的对手投ai票,让你求最少的k。使得你的票数比你的对手多。模拟一下就好了,不多说。然而这题我又犯傻忘记了k >= max{ai},wa了一次。
弱弱地放上我的代码
#include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #define rep(x, l, r) for(int x = l; x <= r; x++) #define repd(x, r, l) for(int x = r; x >= l; x--) #define clr(x,y) memset(x, y, sizeof(x)) #define mp(x, y) make_pair(x, y) #define INF 1 << 30 #define MAXN using namespace std; typedef long long LL; typedef pair<int,int> par; int main(){ int n; scanf("%d", &n); int sum = 0, maxx = 0; rep(i, 1, n){ int x; scanf("%d", &x); sum += x; maxx = max(maxx, x); } int ans = 2 * sum / n + 1; if(ans < maxx) ans = maxx; printf("%d ", ans); return 0; }
B. Lost Array
这题是给你个数组a,长度为n,满足(k是x的长度)。当k = 3, x = {1, 2, 3}, n = 5时a如下图。
让你求所有x数组的方案数和,以及每种方案的长度k(从大到小)。
这题看上去很麻烦,其实很简单。只要求出他们相邻的差,就是一种x的方案。另外的其他几个方案就是由这串差的循环节组成(为什么?自己试试就知道了)。
然而我找循环节炸了,我也不知道为啥,主要还是代码太丑。后来听了大佬的建议,才改进了一点。
改过后的代码
#include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #define rep(x, l, r) for(int x = (int)l; x <= (int)r; x++) #define repd(x, r, l) for(int x = (int)r; x >= (int)l; x--) #define clr(x,y) memset(x, y, sizeof(x)) #define mp(x, y) make_pair(x, y) #define INF 1 << 30 #define MAXN 1005 using namespace std; typedef long long LL; typedef pair<int,int> par; int n; int a[MAXN], b[MAXN], ansk[MAXN]; bool judge(int len){ rep(i, len, n - 1) if(a[i] != a[i % len]) return 0; return 1; } int main(){ scanf("%d", &n); rep(i, 1, n){ scanf("%d", &b[i]); a[i - 1] = b[i] - b[i - 1]; } int ans = 0; rep(i, 1, n) if(judge(i)) ansk[++ans] = i; printf("%d ", ans); rep(i, 1, ans) printf("%d ", ansk[i]); puts(""); return 0; }
C. Smallest Word
这题啊……cf的rating一直不变,去睡一觉,明晚再来打吧
以上是关于Codeforces Round #519 by Botan Investments的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces Round #519 by Botan Investments
Codeforces Round #519 by Botan Investments翻车记
Codeforces Round #519 by Botan Investments F. Make It One