一年一度的CSP终于又来了。今年我的考场和去年一样,所以我每条路都很熟悉。

Junior 组

考前打了LCA练练手,但是一开考就发生事故。试题一直无法解压,开考后15分钟才看到题目。

T1

今年难度巨增,感受一下今年与以前的区别。

以前题目,概括:给出8个二进制数,求出1的个数。

今年题目,给出一个数,求出它是否能被分解成 $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!“时,你会感谢当年的失败的,因为这些失败造就了你的成功。

现在,无论如何,开始继续努力吧,新一年的赛季等着你!