CSP-S 2021 游记
CSP-S 2021 游记
前言
很晚才开始写这篇游记。
主要是在从考完到开始写游记的这段时间里,想了很多事情。
一些事情想通了,才开始写的。
或许,这是我高中阶段最后一次参加 CSP 了吧。
赛时
延后了五分钟开考。
赛前对自己的期望是:
\(0:30\) 看全所有题目
\(1:30\) 结束 \(T_1\)
\(2:30\) 结束 \(T_2\)
\(3:45\) 前结束剩下两道题
最后 \(15\min\) 检查代码
开考前,先把壁纸换成了这张“暴力出奇迹”,一方面是当时真实想法吧,另一方面是在本机使用 NOI Linux 时都是用的这个壁纸。或许能减轻自己紧张感。
开场遍历四道题。
T1应该是个签到题。
T2 \(n\leq 500\) ,大概是个dp。
T3 大概可以做一做。
T4 很失败,用了 15分钟 看题却一直没明白题意。
对于T1,还是比较快有一个“线段树维护区间最小值和最小值出现的位置”的思路。手推了一下两个小样例,感觉没太大问题。于是就用了约 30min 写上了代码。
此时测试大样例,却发现与答案千差万别。
发现大样例中有未排序的情况。加上排序,仍然错误。
这一下就懵住了。重新看了好几遍题,确认题意没有理解错,又反复检查代码,没有发现任何“可能错误”的地方。
这时 \(T1\) 已经用了一个小时。
冷静一下,把过程量输出一下。
这时才发现,是我想的太简单了。有一个贪心(飞机应尽量向前选取)没有发现。
冷静住自己,尽快想到了线段树上二分的做法。
用了大概二十分钟,写好了这个线段树+二分。
测试大样例,终于能通过了。此时悬着的心终于沉了下来。
在这一题已经用了1.5h,加上开考时看题的半个小时,半场考试已经过去了。也不敢继续在这道题花过多时间了。只是再检查了一下代码的各处细节(包括确定两部分处理有没有写混)。
然后做到T2,感觉这是一个细节巨多的区间dp。大概用了一个小时写完dp,两个样例都过不去。此时已经没有心情继续调了。
转而开T3,大约只剩1个小时。
想着剩下的时间想出高分并写出来不太现实,还是只写了 \(2^n\) 的低保枚举分。
剩下的时间一直在修改T2的暴力,最终调过了样例1,样例2失败。
用着剩下的时间编译了一下四道题的代码。
\(18:35\) ,考试结束。
嗯,是的,高中最后一场CSP就这么结束了。
赛后
期望得分:100+?+28+0
用两处的民间数据测试了T1,都没有任何问题,应该是切掉了。
剩下的三道题,我认为既然写的不是正解,测民间数据意义也不大,就没有去尝试。
总结
比赛结束之后看了下代码,发现T1的代码写得只能说是很恶心。
首先,线段树维护区间最小值位置的操作花费了异常多的精力。
实际上这个根本没必要维护。
另外,二分套线段树查最小值的操作,完全可以用一个 \(\log\) 来解决。
由于考试的时候过于心急,导致很多代码的细节部分没有深究,于是写得极其丑陋。
另外是关于时间分配的问题。
最有把握的T1用了一个半小时,远超过期望。但是前提是在明知后面三道题极不好写的情况下,对于T1的分配或许可以称为合理。
但是剩下的时间内,没有正确地分析题目难度。
现在根据洛谷民间数据通过率来看,T3是相对更好写的一个,考场上我似乎也看出来了这一条,但是实际考试的时候却把更多的时间搭在更可能没结果的T2上了。于是导致这两道题失分都很多。
其次是心态问题。整场考试里我紧迫感还是不强。在写出T1后,剩下的两个小时内,剩下的题目没有全部心思去完成。可能是潜意识里认为T1这么难写,拿到那些分数已经“满足”了吧。
在最后的一个小时内,基本可以说是颗粒无收。
还有,自己确实在思路方面不是很宽阔。T2和T3确实是没有做出来,确实是没有做出来。
洛谷通过率约 \(1/14\) 的T2和T3,赛时几乎没有任何思路。只能说,自己在思维方面还是差的太远太远。
最后,一些原本想好的考试步骤没有执行。例如期望时间,期望使用对拍等。
关于停课这接近两个月,我认为效率提升是有的,但是远远没提升到期望的高度。
或许,是当初定的短期目标太浅?
我想,这可能是其中的一个原因。
更多的,或许就是平时不够认真的态度。
下一阶段,我或许是有些迷茫的。
在这一天里,我想了很多对于下一阶段的目标,最终都一一擦去。
我明白,我希望的,就是每天能踏踏实实地学习,争取让自己更强。
我认为我不是一个天资优秀的人。
但是,
我热爱信息学竞赛,并坚定地要为其奋斗。
请你从这次失败的CSP中吸取经验吧。
NOIP。
2021.11.20 。
我相信,你可以的。