发现自己 dp 学得很烂……刷了几道 dp 找找感觉。
晚上死活睡不着,觉得要爆炸了。
白天在学校觉得人飘了。
傍晚回来拿了准考证并调整了下心态。
晚上复习曾经做过的题+敲模板。
完蛋了晚上又睡不着了……
熬到 1:00 才睡,心态爆炸。
早上赖到 10:30 才起床
稍微打了几个板子吃个饭就走了
中午在路上试图睡午觉,结果发现死活睡不着。
1:20 到南航,面了 wjz、ycx、syx、lyc、yxh 和 csy(%%%),发现他们都跟我一个考场
真就除了我都是巨佬呗
大家在楼下互相假了一会
yxh:ycx,要橘子吗?
ycx:好好好
wjz:不愧是npy的力量啊
/toux
1:50开始试机,键盘差评,敲得一点都不顺手。
调编译器设置,开 Wall,Wextra,开栈之类的命令。
先写了个线段树,起名叫做 xyz.cpp,又写了个暴力叫做 abc.cpp,然后对拍结果暴力还写错了
2:20开始犯困了,有种不详的预感。
2:25发题。
蛤?T1大模拟,出题人你危了?
反正就是分了一大堆类,然后每分完一类就手造几组数据测一测因为实在是怕自己写挂。
3:30写完了并过了大样例,虽然过了大样例但心里还是很悬。回想起去年CSP-S的经历,T1 25min就写完了,再看看这次…………心里有些小急。
看 T2,这 T2 不是搞笑的吗?花了 10min 就把它干掉了。
看了看数据范围,\(k \leq 64\),要开 ull,又是这种坑,随便造了几组 \(k=64\) 的数据过了就没再管它了。
再来看 T3,这个 T3 感觉很像那种“一看就没有正解”的题目(smg?)
一开始的想法是线段树合并,但发现空间显然不够就把它弃掉了。
想树,树也不会。算了算暴力分,也就 50 分。所以,不管三七二十一先把那 50 分拿到手吧。
大约5:00的时候拿到了50分,一来当时状态也不太好,二来在写暴力的过程中也找不到啥思路,就没再往下写,开始看T4。
T4感觉可以二分啊。然后写了个二分+set,一测大样例。/yiw?大样例第一个点我输出 1210 而标准答案是 1209?第二个点我输出 1202 而标准答案是 1203?再往下看看,似乎每个数与标准答案差的绝对值都不超过 \(1\)?看来这玩意儿很有前途,说不定改改就能拿到 70 了。
然后就硬刚这个 1 怎么处理,肝了 30min 没肝出来,心态爆炸。
百般无奈之下只好写暴力欸。感觉暴力也留了不少分。70拿不到拿个40也行啊,它每个局面最多有 2 种可能的选择,复杂度就是 \(2^n\) 的。
写着写的,我当时也不知道怎么想的,竟然去测 大 样 例,然后……它过了?
定睛一看才发现原来那玩意儿是 \(n^2\) 而不是 \(2^n\) 的。
又想了想用线段树把它优化到了 \(n \log n\),70 分似乎到手了,其时已 6:05。
再回去看 T3,欸?树的那20分可以虚树+dfs?赶紧写。
写了 5min:不写了,弃了。
检查一下前面两题,T1 写了个一天一天往后推的暴力然后从 \(1\) 一直拍到了 \(3 \times 10^6\) 都没问题,那应该稳了。
T2、T3 自己又测了几组小样例也没啥问题。
最后 5min 一直在干一件事情,用鼠标点来点去检查文件名是否出错。
代码长度:T1 2k,T2 1k,T3 6k,T4 2k。
\(100+100+50+70=320\),技不如人,甘拜下风。
出来之后发现 ycx和我写的分数一模一样 \(100+100+50+70=320\),wjz \(100+100+100+20\) 也是 \(320\)。
我们万分惊讶:T3 这么水的吗?
wjz 也很惊讶:T4 70 分那么好拿吗?
后来,wjz 问问我们是否注意到了 T2 \(n\) 的下界为 \(0\),我们顿时脸色煞白,没事没事,也就 5 分而已,不过可能要被 dd 了。
听 wjz 说 T3 是 DAG 上 dp+懒标记下推,是道思维题(还是 tcl 啊,以后要多刷刷思维题)。
然后 wjz 也问我们 T4 咋做。原来 wjz 也 T4 写了个与标准答案只差 1 的程序,然后就卡在那里卡了不少时间。
后排膜拜 ymx \(100+100+100+100(?)\) 约等于 AK。
10:00 oitiku 开了,实测 \(100+80+50+70=300\),T2 cin 和 scanf 混用,也没注意到 \(q_i\) 不同的条件就用了 set,AFO 了。
毕竟是考完了,虽说一般化,但也只能这样了。
下周二周三还要期中考,好好复习 whk 吧(心理安慰)
洛谷上测 \(100+70+45+70=285\)
牛客上测 \(100+60+50+70=280\)
计蒜客上测 \(100+60+50+70=280\)
校内 OJ 上测 \(100+65+50+70=285\)
原来我 T3 也挂了,就是不含操作 1 或 2 的情况中,记录每个函数调用次数的数组没开 ll,但挂的可能性特别小。
(猛得想起 CSP2019 D1T2,当时在所有网站上都是 100,但 CCF 上只有 80,因为没开 ll),谁知道 CCF 上会不会给我挂成 30 呢?
理论上最低 \(100+60+30+70=260\),最高 \(320\)(但肯定达不到),期望 \(275\) 到 \(285\)。
ycx 似乎也挂了,T2 90(因为 \(1ull<<64=1\)),T3 乘了 0 的逆元,T4 数组没还原,有点惨,估计和我差不多
wjz 一分没挂,320 orz
lxr 出考场时以为自己能拿 400,结果 T1 挂了不知道能拿多少分,T4 出错的概率似乎还蛮大的,大概 70 左右。
又想起了经典句型“如果我没挂分……”
总结:
其实说实话这次最大的遗憾就是没能搞出 T3 + T2 挂掉了。可能与我现场心理紧张导致状态不好有关。前一天晚上因为心态没调整好导致熬到 1:00 才水,也就导致了考场上一系列事情,如考试时候犯困,没法静下心来想一道题。考试时候保持一定的压力是有益的,但压力过大就会导致一些不该犯的错误,比如说,T1 写完心里有点急,T2 实现就比较随性,想到什么就写什么,感觉 set \(m \log n\) 没问题就莽了个 set 上去。
要说这次考试有什么需要保持的地方,就是 T4 写题战略把握得不错,如果我一直死刚那假做法,说不定我连 40 分都拿不到。正是我在写暴力过程中一步一步找到灵感,才拿到 T4 的 70 分的。还有就是最后没有为了那 T3 树的 20 分一直 rush 到比赛结束。说实话,不太建议考试时候写自己刚学的算法。(其实我虚树仅学了些皮毛,其正确性还不能保证)另外,T1 还是道很容易挂掉的题,试想一下假如我 T1 真有问题而我为了 20 分抛弃了 100 分,那不是得不偿失吗?所以还是建议考试最后 20 分钟不要再为了几十分 rush 代码了,仔细检查前面的内容才是正解。
官方数据出来了,T2 竟然拿了 80,incredible,T3 没挂也是奇迹,T4 似乎跑得有点慢,不知道有没有被卡掉的风险。
100+80+50+70=300.
感觉全省前 25 应该没问题吧。
顿时空气清新了。。。。。。
分出来了。确实是 300.
虽然挂了 20 分,但也还行吧。
不管怎样,NOIP 继续努力吧
手机扫一扫
移动阅读更方便
你可能感兴趣的文章