CSP2020游记
lgmulti
2020-11-07 22:13:55
一年一度的CSP终于又来了。今年我的考场和去年一样,所以我每条路都很熟悉。
# Junior 组
考前打了LCA练练手,但是一开考就发生事故。试题一直无法解压,开考后15分钟才看到题目。
## T1
今年难度巨增,感受一下今年与以前的区别。
[以前题目](https://www.luogu.com.cn/problem/P5660),概括:给出8个二进制数,求出1的个数。
[今年题目](https://www.luogu.com.cn/problem/P7071),给出一个数,求出它是否能被分解成$2^na_1+2^{n-1}a_2+...+2a_n$的形式,其中$a_i$为0或1。
不过我还是做完了。
## T2
后50%的$O(n \log n)$拿不动,于是写了$O(n^2)$的,结果回家后发现一堆人写了$O(n^2 \log n)$的。
回家后发现自己的代码也是$O(n^2 \log n)$的。
## T3
全卷压轴,来不及做,写出了这个神奇的骗分代码,不过应该是0分。
```
#include<iostream>
#include<cstring>
#include<stack>
using namespace std;
int n,q;
char s[1000005];
bool value[100005];
int main(){
int i,j;
freopen("expr.in","r",stdin);
freopen("expr.out","w",stdout);
gets(s);
cin>>n;
for(i=0;i<n;i++)
cin>>value[i];
for(i=0;i<q;i++){
int qq;
cin>>qq;
cout<<value[qq]<<endl;
}
fclose(stdin);
fclose(stdout);
return 0;
}
```
不过考后这题基本想出来了,还是考后思路最清晰。
## T4
BFS调不对,于是写了DFS骗部分分。
只骗到15分就有点神奇。
# Senior
和去年一样,中午在公园吃了一顿自己带的饭,然后睡了一会儿。
## T1
我最不擅长大模拟,于是只调试完前50%。
测完发现没一个对的。
## T2
唯一写出正解的题,考后一直担心unsigned long long有没有写。
然后代码里好像有一个1<<64。
不过为什么会只有60多分?
## T3
写完了暴力。
为什么民间数据测出来是0分啊喂。
## T4
5分,正好骗到该骗的分数。
# 总结
今年确实炸了,
在考后那个星期天我睡得很晚,
我在想我适不适合编程,
我在想我是不是时代的眼泪。
不过,我相信这是每个OIer都将遇到的挫折。
挺过来,一望无际的编程之海在等你航行!
挺过来,广阔无垠的算法宇宙在等你翱翔!
失败了又能怎样!
相信当你们微笑着走出IOI赛场,自信地喊出”I AK IOI!“时,你会感谢当年的失败的,因为这些失败造就了你的成功。
现在,无论如何,开始继续努力吧,新一年的赛季等着你!