Day -1
晚上睡觉把夜灯也关了,睡好一点有助于明天复习。
Day 0
其实也没啥心情再复习了,功夫在平时,打板子的用处其实也不大,反正我是从来没有考前打的板子用上过的。上午在摸鱼+简单复盘下最近做的题中度过。吃完午饭就出发去常州的考点,为什么只有40分钟的车程啊,想多在车上安静一会5555
酒店比较不满意,实在是不懂外面10度出头房间里为什么会有26度,还不给开冷空调。热死了。晚上稍微打了几个常用板子就睡了,反正正常发挥省队线是没问题的。
Day 1
起床有点晚了,早饭没啃完就出发去考场了,反正带着点巧克力不会饿。
大概7:50的时候进了机房。电脑配置差评,i3-6100 + win7,尝试打开了一下vscode好家伙花了5秒,还是乖乖用dev c++吧。试机的30分钟打了通用模板,看时间多又打了一个treap的板子。键盘稍微有点不习惯,不过总体手感海星。
发题居然还能晚,痛苦等待中.jpg
8:35的时候终于发题了。t1是个挺简单的套路题,难度甚至低于CSP的t1。准备先不写,看看后面的题再说。t2怎么是个构造?看了一遍竟然不会?不会这次真要只切一题遗憾退役了吧呜呜呜 想了20分钟还是没什么头绪,准备先把t1到手的分数拿到。写+调大概20分钟,大样例一次过,nice。
又看了眼t2,感觉没有思考的欲望。还是先看t3吧。嗯?这t3是跟t2放反了吧,一眼看出只有桥边不被把守会导致不合法,建出dfs树,然后直接树形dp+容斥就行了。立刻开始写,总体还比较顺畅。一测大样例发现跑了1.5s?哦原来是输入就花了1s,毕竟是windows嘛。这时过去了1.5h不到,时间还比较充裕。
上了一次厕所舒缓一下心情,开始想t2。发现对于15分的子任务,可以强制一个栈一直空着,其它所有栈每时每刻最多有两个不同元素,这样每次要么在满足这些规则的情况下新加一个元素,要么利用那个空栈删除一个元素。15分到手,但显然不够。
那么其余子任务多出来的那种元素该怎么处理呢?突然发现可以强制每时每刻在栈中的某一种元素至多1个,也就是这一次加上下一次必须消掉。进一步发现可以强制每个栈每时每刻最多2个元素,且这两个元素不同。同时仍然应该保持至少一个栈为空。这样只有在加入一个元素时,除了那个空栈,其余栈都塞满2个元素的情况才会出现问题。此时,如果有某一个非空栈的下一步操作是删掉栈底元素,那就直接放过去;否则就把当前元素放在那个空栈里,过一段时间会有新的空栈来取代它的地位,且这段时间不会出现新的问题。就这?这就被我想出来了?反复确认了几次,觉得思路应该是没有问题了。不过t2放这个题属实过分了,放t3或者t4都是比较合适的。想t2一共花了1小时甚至再多点,有点浪费,后面尽快吧。
开始写的时候才发现这题是真的恶心。要维护的东西一大堆,还有114514种不同的操作需要分类讨论,很容易漏或者多修改。写了大半个小时过了小样例。不过我还是有自知之明的,这种破题不拍必挂,而且还没给spj,大样例也没法测啊。先写个spj。spj都写了,那就再写个生成器先拍拍小数据吧。果不其然一拍立刻就挂了。上个厕所先,顺便看下时间,嗯,12点之前调出这题,剩下的时间写t4暴力+对拍t3,很完美。
回来看了一下生成的数据,输出序列很长。尝试手画了几次,由于数据过于杂乱都在中途把自己搞糊涂了,有点懵。试了几次之后终于看出是哪一步开始错的了,但是我写的方式又不是很好调试,于是开始瞪眼法。看了十几分钟没看出什么,脑子很糊,不是很看得进去。我t4可是还没写阿喂!我急了我真的急了。
"看一下准考证。" 我抑制住打人的冲动,花了30秒从袋子里翻出皱巴巴的准考证,又掏出几张纸擦了擦流下的汗水。t3是没时间拍了,还是先写一下t4吧家人们。快速看完t4的题面,发现20分可以很快写完,大概花了5分钟。换了一种方式接着找错,把数据抄在纸上一条一条看,模拟程序的运行。顺藤摸瓜终于看出一点问题了,改了一个错。继续拍居然还是有锅?我多测确实是清空了,实在不懂是什么问题。后来也就没什么进展了,除了拍了一下前15分的部分,确实是没问题,至少有个保底。
出考场的时候想着应该事要退役了罢。冥间数据出来后发现周围的人或多或少都挂了分,而我的t2甚至还过了一些点,luogu上一开始出的那份"hack数据"竟没有一个点是wa的。还是希望ccf秉承用脚造数据的原则,多给点分吧
标签:大样,空栈,NOIP,t4,元素,t2,t3,2022,爆零记 From: https://www.cnblogs.com/legendstane/p/noip-2022-you-ji.html