HNOI2019游记
Day 0
说好的9点坐大巴出发貌似因为大雾的原因,变成了高铁,并且咕到了12点,早上就在机房里写了个模板列表,准备当天写完(然而最后只完成了\(\frac{1}{3}\))
到长沙后就完全忘却了写模板的事了,然后写模板的事就推到了晚上
然后晚上睡觉前想起来了,忽然感到心里好慌,然后晚上12点爬起来写了个\(AC\)自动机和\(FFT,NTT\)的板子才睡觉,然后由于喝了咖啡的缘故半天睡不着,最后睡着大概是\(1:30\)
Day 1
不到6点就醒了,瞬间觉得今天要凉(事实也验证了这一点)
开压缩包,没有大样例??我不会写对拍的啊,凉凉!
打开题简单的浏览了一遍,woc,这图看着不太对劲啊,这是HNOI吗?
然后忘记了一开始想的231的开题顺序,从T1写起
然后很快想到了一个\(O(n^3)\)的做法,然后一看\(40\)分啦,剩下的\(20\)分坐标范围很小,似乎也可以做,以为\(60\)分到手了,愉快的开始码
然后越码心态越崩,这细节好多啊,然后发现自己复杂度伪了,实际上是\(O(n^5)\)的只少枚举了一维,然后花了2个小时才码完,一测样例,2万多,瞬间懵逼,然后Ctrl-x-h+delete,删代码走人,不写了
开始看T2,发现这题暴力分好好拿呀,一开始就不该看T1的,然后发现\(20\)分不就是暴力加字符,暴力跑\(KMP\),再暴力撤销吗,然后考虑第二档分怎么拿,发现不需要每次都重新做一次\(KMP\),可以直接继承上一次,所以就可以做到\(O(1)\)加字符,然后撤销还是直接继承长度和答案,然后以为有\(50\)了
然后写了个暴力对拍(假对拍,造数据一组一组手动拍)了,然后拍挂了。。。
感谢上帝,让我在两个代码都是错的情况下拍出来了,还好我怀疑我的暴力了
后来发现不能只继承长度和答案,每次撤销还应该记下当时的字符串状态,这样就有50分了
然后继续想第三档分,巧妙的是,第三档分我也很快想出来了,由于没有撤销操作,可以考虑直接将一段字符串缩成一个字符,再记下长度就好了,这样匹配的时候额外处理一下长度就好了,然后码力太差,没能成功实现
然后去写第一题暴力,10分钟就敲完过样例了,一个小插曲是,场上忘记点积的式子了,然后也忘记怎么推了,按自己想的写(事后知道如愿的写错了)
再去写第三题,这时已经只剩1h不到了,时间已经很紧了,然后题面很长,晦涩难懂
然后猜结论,结论猜对了,但是不会处理,一开始写了个假的,被样例hack掉了,后来忽然想到线段树,最后10分钟敲完了一颗线段树,一开始RE了,找了半天没找到错,最后2分钟发现自己没建树,加上之后没测样例就交了
总之期望得分:20+50+10=80
实际得分:0+50+0=50(好凄惨啊)
Day 2
睡了个好觉,期望能翻盘
开题开题,今天的题看起来正常多了
然后遵循231的开题顺序,woc,T2什么东西,这数据范围我只会写\(O(L^2)\)的暴力dp怎么办,最小的\(L\)都有\(10^6\),\(n=1\)看起来好像很可写啊,算了算复杂度\(O(L)\),好像也不行啊,然而\(k\)的最大质因子是2是什么鬼啊,不管了先看别的题吧
T1好像很小清新诶,肯定是全场A的题
然后我就走上了想T1正解的路上一去不复返,话说我一直以为这有个结论可以询问做到单次\(O(1)\)呢
然后中途想出了70分做法,可以担心自己双向bfs写不对而放弃了,最后写了个只判连通性和起终点的
T3的平均数一眼秒的吧,但是证不出,不敢写,写了就50分了呢
最后只写了个暴力dp,摸了10分
最后T2还是把那个\(O(L)\)的算法写上去了
期望得分:0+20+10=30
实际得分:10+0+10=20(T2MLE了海星,以为稳考场上就没算空间了)
Day 3
就是今天啦,总分是70分呢,对于我一个NOIP没上400的人来说,省选排名也不会太好看吧
最近好像练练码力啦,好多分想出来了觉得不会写就不敢写呢,也有学长因为这点翻车了呢,码力还是要好好提升的呢
文化课也要加油了,前几天学的点积都能考场上写错,听说初中的小朋友拿勾股定理就判出来了,好丢脸啊
总之,就这样吧