现在开始社团事情渐渐变少了,训练量要开始上来了
我发现我终究还是喜欢解题的快乐
12月20日校赛
一周三套abcd
搞起吧
12.1 周二
注意优先队列默认是大根堆
unsigned long long最大是1e19
long long 是 9 1e18
Educational Codeforces Round 99 (Rated for Div. 2)
A. Strange Functions
#include<bits/stdc++.h>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
#define _for(i, a, b) for(int i = (a); i <= (b); i++)
using namespace std;const int MAXN = 100 + 10;
char s[MAXN];int main()
{int T; scanf("%d", &T);while(T--){scanf("%s", s);printf("%d\n", strlen(s));}return 0;
}
B. Jumps
先右跳,再考虑向左跳k+1
#include<bits/stdc++.h>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
#define _for(i, a, b) for(int i = (a); i <= (b); i++)
using namespace std;const int MAXN = 2e6 + 10;
int ans[MAXN];int main()
{int sum = 0, pre = 0;_for(t, 1, 1500){sum += t;ans[sum] = t;ans[sum-1] = t + 1;_for(j, pre + 1, sum - 2)ans[j] = t;pre = sum;}int T; scanf("%d", &T);while(T--){int x; scanf("%d", &x);printf("%d\n", ans[x]);}return 0;
}
12.2 周三
C. Ping-pong
其实蛮简单的,但我想了好久
要让右边的人最大化胜利,那么就是每一次发球都胜利
可以推出答案就是x-1 y
其实自己看样例的时候可以猜一猜的
#include<bits/stdc++.h>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
#define _for(i, a, b) for(int i = (a); i < (b); i++)
using namespace std;int main()
{int T; scanf("%d", &T);while(T--){int x, y;scanf("%d%d", &x, &y);printf("%d %d\n", x-1, y);}return 0;
}
D题一直WA
明天再想
一定一定要保持自己独立思考的习惯,一定一定不要轻易看题解
觉得自己真的尽力绞尽脑汁了才去看题解