CSP2024 游记
CSP2024 总结
赛前:
考前停课了一周,努力备战 CSP 。自己消化的效率好低,每次模拟赛的题还有选讲的杂题都改不完。大概是因为讲评时,自己的思路没有和讲题人保持同步,之后又要自己再去理清楚。
考前有 VP 一场 CSP-S 的模拟赛,打得还好,时间也够。不足在于自己有正解的思路,却不能将题目写出来,总是有一些技巧、套路没有掌握。改善这一状况的方法只有做题吧,增加自己的阅题量。
赛时:
当天由于没有报名 J 组,在图书馆改题。发现了自己容易漏掉的一些小细节,包括用于特判的特殊值不要设在值域范围内,还有 \(treap\) 要处理好 \(0\) 号节点的情况。
开考后,我决定先将每题都看一遍,思考做法、细节。我给自己留了将近 50min 的时间去思考,这样可以让我多想想正解。T1 简单,排个序然后贪心就好了。T2 还好结尾给了提示,要不然我还要多想一会。想了一个二分的做法然后去看 T3 。T3 想到了一个 \(O(n^2)\) 的 DP ,看了一眼部分分,多记了一个 \(O(na^2)\) 的 DP 。继续思考,想到可以设 \(f_{i,0/1}\) 表示第 \(i\) 个位置的颜色是否与前一个位置的颜色相同。但是转移时只想到了由最近的一个转移过来。再看 T4 ,打算打一个 \(16pts\) 的模拟再根据剩余时间拿分。
接着开始敲代码。T1 很快敲完了。T2 敲完之后测不过样例,发现自己求第二问的方法有问题:只记记录了第一个位置,可能不对。然后开始想如何去改。过了一会才想到可以现将测速仪的区间求出来,排序,然后从左往右贪心,每当不能再放置区间时,答案+1,并重新计算交集。
但是打完之后发现第一问过不了大样例,眼调了好久,才发现是自己计算超速的区间时没处理细节。过大样例已经到了比赛的后半场了。
上个厕所回来转战 T3 ,发现自己的 \(n^2\) DP 好像假掉了,还好打 \(O(na^2)\) 也有 \(50pts\) ,没有破防。打完 \(O(n)\) 的做法时发现过不了大样例,但是也没怎么放在心上,去打 T4 。T4 打完后不知道出了什么问题,输入都输不进去,留的时间也不多了,最后没有调出来。
最后估分是 100+100+50+0=250 ,等待成绩。
总结:
主要的问题在于 T2 ,想了个假的做法,导致需要重新去想,又因为有点急所以没有注意到细节。T3 没有好好想一想状态如何转移,不过还好有其他的部分分可以打,不然真的会慌。
自己代码的实现能力还不够,不能在完善好细节,导致需要浪费时间调试。要多练习一下码量大的题目、细节多的题目。自己思考的也不够完善,T3 如果没有将自己局限在”只能由前一个相同的数转移过来“或许就能够写出来,而且自己也没有去调试一下,对自己切掉 T3 没有充足的自信。
NOIP RP++