【游记】CSP-S2020游记

ThisIsAName

2020-11-08 15:49:48

Personal

# CSP-S2020游记 ## 复盘 ### DAY -1/-2 比赛前两天。 打了两天板子,丢博客上了。手打50kb也是第一次,基本上没干其它的。 ### Day 0 指CSP-S上午。 主要再复习了一遍板子,理了一下总体思路。 但是事实证明一年来学的所有算法和数据结构都没有用上(x),用了模拟和暴力(√)(对了或许前向星算数据结构吧..) ### Day 1 CSP-S。 #### 考前 正常进考场,上厕所。考场很热,进来就脱外套。这排右边的老哥拿着机子就开始动机子打板子了,虽然监考不让...~~搞心态~~。大概提前十分钟上网下载题面压缩包,以及打开密码网页。输密码第一次没复制括号,第二遍才对。这时发现鼠标灵敏度不高,粘在桌子上一样,键盘需要压得很深。打板子,开题。板子打得不太溜。突然想到以前看过游记说密码好像都是成语拼音来着,就又打开密码拼了一阵,放松放松心情。考后才知道:PJ:"Ta!Shan@Zhi#Shi$"(他山之石+!@#$(shift 1234)),TG:"(ke2YI0gong2YU0)"(括号+可以攻玉+2020)。 #### 考试 **14:30~15:30**:离谱的是考场没有明确的开考信号,大概14:32才开始看题。着手第一个题,一眼大模拟,有点难受,但必须硬做了。感觉旁边的人很快就开始敲码了,不过我还是好好读题稳了一阵(说实话这个时候有点小慌)。粗略安排一小时一道题,第一个小时就死磕在T1上了。以前做过一道类似的模拟,也是一个日期以后n天是哪个日期,按当时的做法一天一天加,得到了第一个版本,才发现数据`1e5*1e9`,想了好些优化方法:间隔打表,二分,一年一年跳,几年几年跳...然而到一个小时时都没有实现,于是还是去看下一道题了。 **15:30~16:30**:(机房实在热,于是又脱了一件衣服..)写T2时有些慌了,题面描述没看清楚就开始码,来来回回敲码,样例过不了,重新读题重复了好几次。(居然敲得超级熟练的前向星一般习惯写成x的变量写成了u还将错就错往下码)这导致思路混乱,最后写出了基本框架但还是过不了大样例,但已经1h了故开下一道题。 **16:30~17:30**:T3看起来是数据结构,果断暴力先码上,样例过了,想线段树优化但码量太大,走人。T4看题以为贪心,跑不过样例2。再读题,以为贪心策略不够优,写zkw线段树优化(我可能是个憨憨),跑不过样例2。又把zkw线段树换成暴力维护,跑不过样例2。走人。 **17:30~18:10**:此时还没有一道题可能AC,再回头看前两题。先花了一小会看T2,发现离散化的时候m写成n了,改回来大样例过了。然后改T1尝试分段讨论但失败,于是写了按年跳再按天跳的程序,虽然铁定TLE但也没有办法了。此时计划的30min NOI Linux调试代码已经过去10min。 **18:10~18:30**:开虚拟机测试,弹出来一个奇怪的提示栏,乱点一通;一边开机一边阅读T2自己的代码静态查错。虚拟机输密码的时候不知道为什么小键盘锁关了,输入`123456`进去,桌面啥也没有。不太熟悉命令,导致编译工作进行得比较混乱,但总之在Linux下把能跑的样例跑过了。整理文件夹。之后再阅读T1T2的代码,静态查错,但也没有改什么。 Upd:中途旁边的老哥屏幕突然黑了,过一会自己又亮了..(后续见NOIP游记 #### 考后 粗略估计50+100+25+0。~~菜~~ 洛谷自测50+55+0+5。~~啊真棒~~ Upd:最终成绩:50+80+10+0=140 -> 2= ### Day2 这不就来打~~退役~~总结了。 ## 总结 ### 就题总结 T1:没有好好看数据范围导致的失误,后来不想重构导致局限。本来有许多好的思路,但没有好好选择一个着手实现。在T1上花了太多时间。 T2:没好好读题叭。前期花太多无用时间码了一些没用的码。最后也没有好好思考复杂度直接把k(<=64)想成常数了,然而6e7过不了,但其实按位或起来就完事。还有1ull<<ctr的小细节,ctr==64时会爆ull。Upd:没看见“互不相同”。 T3:暴力码挂了我是没有想到的。1.取模函数没加`&`;2.`typedef long long LL`没习惯写`LL`以为自己写的`#define int long long`全写的`int`。之后以为暴力没问题甚至没有静态查错。实际上打懒标记也是可以想到的呢。 T4:没注意看小数据范围,其实可以骗10分的..害 ### 考试总结 这次考试无疑是失败的,而最大失误在于心态。 其实四个题考场上能打的部分并不涉及什么高级算法,就是注意细节打就完了。要是平时做这套题200pts+应该很轻松。但是受环境(热,不熟悉机子,还有其它选手的行为)以及题目(T1)的影响,导致心态发生了微妙的变化,这直接导致了: 1. 不能静下心来读题; 2. 不能静下心来读数据范围; 3. 以上两项导致乱敲代码浪费大量时间; 4. 代码出现低级错误; 5. 没有有效的时间分配。 对将来可能还会参加NOIP的蒟蒻算是有了一次宝贵的~~爆零~~参赛经验。记得下次考试: - 心态稳住,不要受其它选手的影响(~~没看错的话旁边位置上初赛98.5的dalao只收取了两个文件上去,洛谷评测25分~~); - 一定好好看题,看懂题再码,不差这些时间; - 一定好好看数据范围,包括最大范围,能骗分的范围; - 关于时间分配(可能):[1.5h]先顺序认真读所有题,尽量想正解,不行就先码暴力(复杂题用函数封装)(当然模拟题尽量码);[1.5h]然后从编程复杂度小期望正确性大的开始码;[0.5h]这时剩下的题如果想不到正解,码骗分程序;[0.5h](一定要有)阅读所有代码,静态差错+虚拟机编译。 Upd:实际分配见NOIP游记。 ## 最后的话 虽然CSP-S2020是失败的一战,不过好在还有NOIP这样一次机会。 记得崔添翼dalao的《背包九讲》里有这样一句话: > 失败不是什么丢人的事情,从失败中全无收获才是。 - - - - - - - - - - - - - - > ~~之后的 NOIP2007 的比赛中,我得了满分。~~ $$ EOF $$