不出意外的话,这应该是我高考前博客的最后一篇随笔了。从2015年5月进入高中,接触到OI到现在,已经有两年半了。我尽量写,尽量把我OI历程的最后一点时光完整地记录下来。
Day-1
由于及其**的原因被老师叫到学校,然而进了学校就出不去了……联想到前几天在机房的颓废状态,今天的效率似乎已经注定了呢……
中午用午睡时间补完了lovelive sunshine第二季,然后下午第一节课就用来午睡了……起来迷迷糊糊地想拯救一下菜鸡的dp,对着Luogu Autumn Camping给普及组准备的课件看来看去,居然半懂不懂的看来是没救了,到了体育课,就突然有一种下去上课的冲动。
似乎从高二下学期期中开始,就再也没有在操场上踢过球了。还记得去年NOIP考完后出成绩的那天,我站在门框前望着蓝天,有一种压力之下说不出的感觉。结果在快要下课的时候一个球没抱住丢了……很是尴尬。
回家之后心态变得出奇得好……大概是看懂了一道省选题的题解的缘故吧,各类模板也刷了刷,然后就躺下睡觉了,感觉最近对舰B越来越无感了,反而开始泡B站了。
Day0
一早起来开始刷模板,刷着刷着上起了知乎……感觉自己又干了一件颓的事情。丰盛的午餐后被我妈送去了学校,因为已经午睡了,也就没有和班主任告别。当年数学联赛前和班主任的拥抱我还记忆犹新呢。上了高速之后就困得不行,一觉醒来发现已经到溧水了,之前每次出去都能看到宁杭高铁的动车组,然而这次什么都没看到,感觉自己药丸。
到了南京,看到那熟悉的南航大厦,有一种莫名的感觉。斗胆和老师一起去看了一下机房,发现新开的6楼机房环境出奇地好。去看8楼机房时还被一位慈祥的阿姨奶了一口2333……
回到没有窗户的宾馆无聊地打开电视,发现居然有小米盒子,看到动漫区后想找lovelive sunshine,然而没有找到,连re:creator都找到了,后来发现了搜索功能后果断搜索,发现lovelive sunshine被分进了儿童区……我还能说什么……然而之前已经趁停课的时间把番补完了,所以勉强看了一集,然后就被教练叫出去吃饭了。
因为这次住在西门,饭店没有北门那里多,就近吃完了事。回来之后又上起了知乎,看到一些觉得揪心的话题,就没忍住看了下去,回过神来发现已经8点了。勉强把一些NOIP真题看掉,再看了一些STL的神奇用法,本来还想看个平面最近点对,一看时间11点了,就弃疗了。
一躺下发现因为房间没有窗户,有一个排气扇是强制开启的,然而发出的噪音炒鸡大啊……还好我事先准备了耳塞,所以问题不大。大概11点半就睡着了。
Day1
迷糊间被自己耳塞弄掉吵醒了。然后一看手环……
卧槽已经6点半了?!讲好的6点起来洗澡的啊!!!
手忙脚乱起来洗澡,罕见地只用了10分钟,然后开始收拾行李,吃完早饭就往南航大厦走,到那里发现今年排队从一楼大厅变成了楼前广场,担心明天下雨怎么办……然后看到了SCZ一干大佬谈笑风生,在心里默默地%。
到了试场,又看到了那个亲切的南大教授,感觉助考态度都很友好。试机时我什么也没敲,感觉没有什么好敲的啊……然后就发题了。
感觉今年的Day1画风比较正常,T3终于看起来比较友好了。T1第一眼想到扩欧,发现似乎有规律,5分钟证明出来,然后秒了。然后开始看T2,感觉就是一个大模拟,然而一开始在线做WA+RE到飞起……改成离线之后就好了很多,对了样例2把单栈改成双栈之后就没有问题了,这个时候离考试结束只有1h了……也就懒得手测数据,直接上T3。先赶紧敲了一个30分的最短路计数,然后开始想正解。我的想法是最短路预处理之后用一个类似spfa的框架统计路径个数,写出来过了样例,然后T了大样例……这个时候大概只剩30min了……以为自己的正解只是常数大,冒着做不完的风险写了一个数据生成器对拍k=0的情况,发现正解又炸了……就有把两份代码拼起来的想法,然而不会用struct,试了一下就放弃了。然后就到时间了。
回到宾馆,情不自禁地又看了一集llss。看完之后已经是两点半了,于是赶紧倒下睡觉。现在觉得这个没有窗户的设计十分友好了。结果因为没有窗户一觉睡到了4点……起来又看了一集llss之后,就张罗着吃晚饭了。因为实在不想去隔壁吃所谓“东北菜”,所以点了Mr'Pizza的外卖。
吃完饭已经将近7点了。复习之前把T3复制了一遍拿到Luogu上自测,全部WA掉了……尽管后来发现是因为Luogu重边的问题,但还是发现了自己写的最短路计数有十分严重的bug,于是心态就崩掉了。开始莫名其妙的瞎颓,期间n次被同寝室巨佬的笔记本电脑诱惑:背光键盘,1080p屏幕,碳纤维材质……未来买Thinkpad X1 Carbon的概率大幅增加。
最后看了看概率+期望DP和树上差分之后,就睡觉了。
Day2
睡着睡着醒过来发现左边耳朵耳塞不见了,一看时间只剩一个小时了,就没打开灯找,继续勉强睡了一会之后开始玩知乎+舰B。洗完澡,吃完饭站在寒风里,有一种莫名的慌张。
站在楼前广场,再次确认了6S3的人数是所有区里最多的……然后又到了试机的时间,期间依然无所事事。
发题之后,扫了一下T1,有些不敢相信,怎么这么简单?不就是一个图论模拟题?然后开始看T2,一开始以为是一个类MST问题,一看点数最多只有12,状压DP?再看T3,一脸高级数据结构的样子,感觉不可做。
半个小时看过一遍题+做掉T1后,开始状压DP,一开始不是很敢枚举集合的子集,胡乱写了一个转移,后来分析发现这样写转移出来的树似乎只能是一根链……赶紧加上了一个补充,然后又发现这样转移出来的树根一定连向一个叶子节点,于是又不对了……后来分析感觉枚举集合子集似乎不会出问题,复杂度也还说得过去,写完之后发现过了大样例,一脸激动……
T3火速敲完一个30分暴力,然后发现x=1的操作本质上就是把一个二维问题转化为一维,然后想到了块状链表,发现不会敲,然后发现似乎给每个块用平衡树维护一下就可以了?正觉得很有道理的时候,突然明白过来:直接用一棵平衡树不就好了!!还好在之前准备省选的时候把treap敲得滚瓜烂熟,然后20min敲完拿去对拍发现过了。正在激动,留了个心眼造了一个极端数据,发现RE了……明明数组不会出问题的啊……然而现在发现问题了……我平衡树没有回收内存……内存要开两倍……我现在不记得我开的是1e6还是2e6了……但愿不要有事啊…………
回校之后就赶上了期中模拟考,期中考试大概药丸(手动微笑)。
就这样,我两年半的OI生涯结束了。
把我QQ空间发的说说贴过来吧。
就此退役。
从2015年5月至2017年11月,一共两年半。
不完全统计,最早追溯至2016年5月24日,至今一共写了603份代码,共601783字节。平均至两年半,每天写了660字节,每两至三天写了一份代码。
从当初的var i,j:integer到后来的helloworld再到NOIP2016的失误,省选的颓废,再到NOIP2017的背水一战。
可以说是收获很多了。
还有很多没看完的东西,点分治、树套树、AC自动机、FFT、FWT……
这些都不重要了。一切都已经结束了。
很早就打算用这句歌词来结束自己的OI生涯。
remember,remember,all we fight for.
永远不要忘记,我们曾为之奋斗的一切。
还有更早,准备省选时用来勉励自己的:
彼时击节讴新声,唱彻白首之约,抱柱之盟。
摩肩人步履匆匆,多少相遇能有始有终。
如今看来,应该算是有始有终了吧。
再见,OI。
2017.11.13
UPD1-2017.11.17
拿到了自己的代码,放到Luogu上测了一下,100+70+10+100+90+30=400。大致是比较满意的。只是……这次D2T3是真的因为手残挂掉30分啊!我写的是30分暴力+30分x=1特殊数据,所以需要把两个算法并在一个代码里,然而我if后面既没有加return 0也没有加else,所以前30分的数据执行了两个算法……白白丢掉30分啊……D1T3挂掉都没这么难受过……
具体总结,等到分数正式出来再说吧。
UPD2-2017.11.23
前天就出分了。没有更新是因为等教练的全省排名。
100+80+10+90+95+30=405。全省排名60左右。省一压力不大。
感觉自己除了D1T3挂掉之外,是没有犯什么大错的。如果硬要指摘的话,D2T3的手残和D1T2莫名挂掉20分勉强能算。如果自己D1T2能做得快一点的话,给T3两个小时,做出来的概率应该不小。然而世上并没有什么如果。
这次NOIP的成功,应该归功于D2T2顺利地在一开始就想到了状压,并在一开始就设计对了状态。尽管在状态转移上犯了一些错误,但最后浪费的时间不是很多。想想便会发笑,NOIP前模拟赛有一点难度的DP题从来没有写出来过,整天叫着DP弱项,结果最后省一靠的还是DP。其实如果D2T3前30分没挂的话,准备省选期间写得滚瓜烂熟的平衡树也能算,只是……
接下来,就等分数线和证书了。
两年半的OI,总算能有一个比较圆满的结局了吧。
清北体验营?高考前两个星期的东西不存在的……
UPD3-2017.11.30
分数线出了。江苏290,浙江360,比我想象得低得多。今年D1T1,D1T2,D2T1都完全应该全拿,再加上D2T2的70分暴力,D2T3的30分暴力,省一线完全可能再高50分左右。不过这样也好,这样算来我校近年来第一届oier全部拿到了国一,是给学校信息学竞赛开了一个好头。教练知道了,应该会很开心的。
这位巨佬其实天赋很高,只是一开始将精力分散在三四门竞赛上,最后由于种种因素差点门门皆空。好在天道酬勤,终于没有辜负他这两年多的努力。诚挚祝贺他。