联合省选游记

· · 个人记录

前言:

说起来的话,省选已经过去很久了。

时间或许会抹去考场上的细节,但是也能让笔者能冷静地看待这次的失利。

如果笔者有记错的地方,请原谅。

集训期间:

停课大概五个多周,和班主任交流一下之后还是照常进行几门主课的学习。

新的算法即使学到了也不能灵活使用,不足以应对省选的考试难度,所以笔者还是很随意地写写 \text{codeforces} 题。比赛也没怎么打。

时间很平淡地流过。

省选前一天:

笔者的父母知道参加考试之后要隔离后没有去。而是让外公陪同,由笔者的老师接送。

于路无话。

到达考场之后不久就开始试机了。

试机的时候发现只有 \text{Linux} 可以使用。笔者之前没有用过,自己研究了一下大概是能写代码了。就是对拍程序不是很会弄,试机结束后尝试在自己电脑上装一个虚拟机,可是空间不够。最后借了隔壁宿舍的一位考生的电脑试了一下,其实和正常的对拍也没有多大区别。

晚饭是饭店的盒饭。

省选第一天:

前一天晚上由于舍友的鼾声到两点才睡着,早上六点多就被闹钟吵醒了。去考场前又稍微躺了一会。

早饭是饭店的盒饭。

考试开始之后先大概浏览了一下题。

第一题看上去很简单,不过应该会有很多的细节。

第二题花了一点时间研究了一下,感觉会用到一些数学知识,可是我还没有进行相关的学习,就在推出一个还不错的部分分之后暂时放弃了这道题。

第三题的题面很有趣,但是笔者当时并不能想到一种合适方法处理这个问题,而且这个位置的题目不会很简单,也没有花太多时间。

接下来就把主要的精力花在了第一题上,写了大概一个半小时把样例过掉。但是样例太弱了,就自己造了一些数据跑,有好几次自己算错了还以为程序错了(笑)。不过还是改出了不少的错误,虽然不知道是不是完全正确,至少心里基本有了底。

然后又生成了一些比较大的数据检测程序的效率,也没有出什么大问题。

但是做之前这些事情花了太多时间,只剩下半个多小时了,最后也没有能写出第二题一开始就已经推出的部分分。

草草地写了两个暴力收场。

最后没有挂分,不过分数依然不好看,大概就是省选平均水平。

出考场没有人问考得如何,晚上也没有人打电话或者私聊。

午饭和晚饭都是盒饭。

省选第二天:

早饭还是盒饭。

机子的时间有点问题,记录了一下和实际时间的差值,是 16 分钟。

考试开始之后还是先浏览了一下题目。

第一题的问题转化很好做,自我感觉如果有时间的话可以攻克。

第二题感觉似曾相识,仔细看了一下之后却也没有什么很好的思路。

第三题一开始读错了题(看成交流题目,也就是两个点的题目增加对方的题目数量),感觉不可做。其实很大程度是被这个题的位置吓住了,也就没有在有时间的时候进行过多地研究。

和第一天一样,笔者还是把大多数的时间交给了第一题。

完成转换之后不久就在质数的数量上卡住了,花了大概半个小时才想到大多的质数只能和之前很小一部分质数结合。写了个程序跑了一下,大概是第 13 或者 14 个质数的样子,大概明确了思路。这个思路是正确的。

写到一半桌面坏掉了,无法显示。请监考重启了一下之后好了。不过在这之后一共又坏了 4 次,也重启了四次。好在不是什么特别大的故障,没有丢失文件。

中途出现了很多细节处理上的问题,过掉所有样例的时候实际上只剩下一个小时了。

自我感觉一百分到手,同时也意识到想要省选翻进去还要拿到更多的分数。这个时候其实有点慌张,也就没有继续进行第一题的测试,这个疏忽也直接导致我最后这道题只拿到 10 分。

其实我自己在写代码的时候没有注意小质数和大质数边界方面的问题,但给出的几个样例中并没有涉及较大的质数,自己造的数据中也没有涉及边界,仅仅是用几个较大的质数大概测试一下就没有继续研究下去。

在接下来的时间里,我优先进行第二题的部分分的书写,不过由于上文所述的心态的影响,我在时间明显不够的情况下试图推导出正解,最后以失败告终,只能写下最小的一档部分分。

接下来我就注意到第三题读错题的问题,并在读完题之后立刻想到了 O(n^4) 的解法,并很快转化到了 O(n^3)。可是由于紧张,笔者错误地认为电脑上的时间就是实际时间(实际上应该还有额外的 16 分钟),认为剩下的时间只够写一个最小范围的暴力。

等到监考提醒剩余时间才想起来自己的时间出了问题,可惜这个时候时间已经不够了。盯着屏幕的时候突然想起来很久以前的一个教练对我说,如果电脑出问题可以向监考要加时。不过这已经是过去的事情了,我也不知道他还记不记得有我这个学生了。

写完了暴力之后又检查一遍文件。

然后就看着旁边墙上的秒针一点一点地转动到“12”的位置。

到此,省选结束。