按照惯例写一篇游记,纪念我高中 OI 的第一次正式考试。

飞雪连天射白鹿,笑书神侠倚碧鸳。纪念伟大的金庸先生。

Day -1

离考试越近自己越静不下来。

中午一点到了石家庄站,今年的比赛还是在燕大。

等车的时候发现不会在虚拟机里编译,慌张地问了一波。

上火车之后莫名其妙被换座到了1A。颓的时候发现,旁边两位爷开始离线切题太强了。

Day 0

早上起来被教练通知又要考一场模拟赛。T3 只会 $60$ 暴力,然后事后诸葛…

下午试机。耍无赖苟在那里将近一个小时,最后只是敲了链剖和倍增互拍,还拍挂了慌慌慌。

晚上学长说注意事项,感觉讲的东西都没听说过。回去之后和 ZH 一起梳理了知识点,感觉不错。

睡觉的时候外面有跑步和喊叫的声音,以及午夜凶铃。以为是初中的 后来得知是高一学长

Day 1

今天在燕大 1 机房,座位在前排角落,周围目测是友善的高一学长。

开题发现i7-8700K 以及 512M ,非常资瓷啊,再也不怕常数大了…

T1 确认完题意就会做了。 在首尾相接 上纠结了一会,发现样例解释不了环,就放心写了。

T2 读了两遍题,感觉有点难。玩样例发现选的都是原来就有的数,觉得有些蹊跷。冷静了一下,分情况讨论证明这个结论是对的,然后就得到了排序之后用背包贪心的解法。

T3 明白了问题模型之后,发现不会找树上一堆链,开始看部分分。发现简单的子任务合起来就有 $55$ 了,于是先写了这些点,解法分别是树的直径,所有边长取最小值,正常的二分答案+验证,以及二分答案+双指针。

然后上个厕所冷静了一下,回来发现可以用树形 DP 搞。几次 WA 和 死循环 之后,找了好多反例,高度紧张的状态下在 11:40 的时候终于码完了,应该是我人生中第一个考场 $200+$行吧。测了一发大样例没有 TLE ,肉眼比对第一页没锅,打开cmd ,输入fc track.out track3.ans,显示FC: 找不到差异,突然觉得全世界都清静了。

下午在宾馆里看板子,晚上十点多就睡了。意外的睡得不错。

Day 2

今天在燕大 4 机房,座位在正中间,前面是 zyz 后面是 czy ,旁边的老哥看起来不是很友好。

T1 开始以为是最小字典序拓扑序,写完过不了样例,发现读错题了,应该是是 DFS 序。想起来还没有看数据范围,看完发现是基环树。发现 $60$ 很好写,$100$ 只会平方复杂度,因为用的是邻接矩阵,感觉写起来很麻烦就先撂下了。

T2 题面太长就先做的 T3 。NOIP 前写过一道题,是 [SDOI2006] 保安站岗 。我就把边覆盖读成了点覆盖,十分自信地码完了 $44$ 的暴力,竟然过了样例,然后就十分自信地去搞 T2 了。

T2 明确题意后写了状压路径的 $20$ 暴力,开始找规律。发现和前不久 CodeForces 的 一道 D 题可能有一样的思路,每一条斜线上只要只是一段前缀 $1$ 就合法了,因为每一条斜线上的点在字典序列位置相同。然后推了个公式带进去发现算的不对。找了很久没有发现原因,只好把不合法情况打出来,发现两条交错路径就凉了。尝试状压斜线,发现不会转移,只好暴力把表打出来算了。打的时候发现了一些规律,但是对 $n>4$ 并不适用,就只打了前 $65$ ,放弃了剩下的 $35$ 。

回去赶 T1 ,思路混乱,发现得把邻接矩阵存改回邻接表。写完发现跑不出来,慌了,把 T1 $60$ 的代码和另外两道题先打了包。到最后都没有调出来,最后收卷的时候头脑一片空白。

下午去看海,照了合影。我和 Luan 在沙滩上留下了手划出来的字。我写了NEXT YEAR GOTO NOI 2019

返程火车上老师把代码发下来了,交到洛谷上 $60+65+0=125$ 恍恍惚惚,比预想的还要糟糕,没有再和教练说什么。晚上机房泡面,聊天时终于发现自己读错题的事实。

Day n

几个晚上都在想,如果 Day2T1 码出来,或者 Day2T3 没读错题就能加上四十多。

民间数据在 HE 大概 rank 30+ ,我还是想接着学的啊。

最后拿到了成绩,跟洛谷上测出来成绩差不多。

$100+100+95+60+65+0=420$

也得到了 rank 40+ 的尴尬境地,几经折腾可以留下来准备省选了。

Summaries and Flags

稍微多说两句。

不要期望超常发挥,正常发挥就是最大的幸运。

心态要平衡,OI 两天的赛制也考验心态。之所以会出现低级错误,就是考场上想得太多。考场上不要想之前考的怎么样,认真做题就是最大的成功。

后面的学习已经有赌的成分在里面了,立一些 Flag 激励自己。

  • 少看游记少颓废
  • 省选阶段模拟赛能搞懂的题都改完写题解
  • 做掉尽可能多的近 $5$ 年内各地省选题
  • 把能打的不是猝死场的 CodeForces 都打了,赛后补题解