CSP-S2026游记
标题:CSP-S2026游记
前言:本来懒得写游记,但是考虑到要退役了,还是简单写一下,留作纪念。
考前一晚一直在打模板,因为之前有过做信心题结果被信心题切的经历,所以只敢做模板。晚上稍微失眠了20分钟。
第二天早上6:45起床,还得去上学。不知是冷还是紧张,骑车去学校的时候牙齿在打颤。在学校里心不在焉地上完四节课后就要出发了。在学校食堂随便吃了一点,上车后和教练一起过去。
提前1小时到考场,在杭师大下沙校区,在外面等了一会就进去了。我的考场好像管得很严,开考前一律不准动鼠标键盘,我点开考前须知都不行。前五分钟公布解压密码:Oct31==Dev25?,输了好几次都没对,以为问号要用中文,还是不对。过了两分钟,监考说输错了,应该是 Oct31==Dec25?,气笑了。
开考后,先读一遍题,T1简单题,T2绕来绕去的,读不懂,只知道大致是个最短路,T3不清楚,T4一眼不可做。
先开T1。一开始想到二分答案,不对啊,没有单调性,难道是三分?又想了一下,发现目标固定时,肯定优先取最靠近的,然后开了个双指针,花了30min过了。顺便说一下,我的键盘F9到F11都不能用,只能手动点编译键。而且找不到计算器,只能把表达式写到编译器中编译出来。预计100分。
之后开T2,读了两遍题,发现进地铁站的时间不用管,在最后加上即可。不确定线路是否双向,看了一下样例再结合生活实际,应该是双向。手摸一下样例,发现可以把相同的线路抽象成一个点,有相同站的线路之间连边。n<=500可以跑Floyd。后来写到一半发现如何给每条路线存点有点难,用bool数组表示是否存在会炸空间,用vector存站点查询困难,想了一下用map存。因为暑假集训时Floyd的遍历顺序错过一遍,因此考场上写对了。之后1h写出来,状态极好,简单调一下就对了,跑一下大样例,最大0.4s(开O2),觉得没问题。预计100分。
因为T1、T2只花了1.5h,再加上考前我目标只是T2部分分,信心极佳,开T3。花了0.5h发现题目读假了,要求恰好有两条路径,我以为至少两条路径。信心下降,之后想了各种方法,无果,连暴力都不会写。糊了一坨上去,预计得分eps。信心--。
最后剩1.5h写T4,暴力dfs所选集合,写完发现要求不大于两个连通块,没招了,直接放弃。预计0分。
剩40min,研究一下T3的等差数列特殊性质,数学太差,没搞明白。
最后20min,检查了好久代码和文件夹,出了考场。
回到车上,跟学弟和教练随便聊几句,想到T2用unordered_map应该更快一点,有点后悔。上洛谷发现人均220+,绝望了。
到家里上洛谷自测一下,T1全对,T2有三个点TLE,只有88分,换成unordered_map还是TLE。希望CCF的少爷机能跑快一点。T3、T4也测了,本就没什么分,懒得打了。
最后求个赞,成绩出了我会更新最终成绩。