[GDOI2017游记]一次刺激的冲省队历程

Before Contest

比赛前机房组织了整整4轮12场的GDOI12连测。状态一直不怎么好,每一轮三天总要挂至少一天,而且是挂到全机房垫底那种。直到最后一场才勉强摸到了校线(第五名)的后面一位。感觉自己状态很差,所以对这次省选也没有抱什么太大的期望,想着能够达到B类分数,体验一下被卡校线的滋味,就已经很满足了。
(12连测完后无聊改了改hackerrank审查元素截的图)
[GDOI2017游记]一次刺激的冲省队历程_第1张图片


Day 0

报道日,酒店是比过这么多比赛以来最好的,房间好大。。。
晚上为了防止自己失眠,便按着自己平时作息,10:40就开始看看小说准备睡觉,11:20左右就开始睡了,果然睡得很好。


Day 1

一到考场,发现机子上有Sublime Text 3,超兴奋。然后还发现键盘高键帽手感超级好,感觉很开心。
还没有公布密码,先点开check.pyc看文件名,一看T4名字是geometry!!!沃日!!!喵喵喵!!!考前不知和同学说了多少遍GDOI绝逼不会考计算几何题,这是要打脸的节奏?
打开pdf,第一题是裸的KMP乱搞;第二题题面好长,看了半天才看懂,没什么想法,只会带个 log ;第三题一眼 Trie 上建 SAM 然后在 parent 树上统计一下就好了;第四题原来是假的几何题,一点想法都没有,而且连可能相关的卡特兰数都不忘了个精光,所以最后也是什么都没有打。
回过头想了很久T2,无果。过去40分钟了,决定准备开打,但是还是有点虚,怎么可能随随便便给我嘴巴270分了?于是又确认了几分钟,感觉没什么问题。
T1很快就过了。但是T3花了比较久时间,一直没有过掉样例,发现 SAM 果然还是不太熟,各种错误。后来还发现自己没有考虑子集情况,样例没有这种问题,幸好想到了。好不容易过掉样例,感觉不太可拍,就随手出了一个小数据,在这个基础上改了几次数据,都没什么问题,就放了。这时比赛时间已经只剩下1h了,就只好码了T2的70走人。因为我的 log 是树状数组所以常熟很小,开O2测了测极限数据发现还是有希望的。
最后15min建子文件夹加上各种检查,感觉没什么问题。

出来很开心,但是同时也比较虚,感觉应该很多人都会两三题,今天可能会变成不fst选手怒踩fst选手。吃饭时说了这句话,发现腾爷听了脸色不太对,后来了解到他好像不太会 Trie 上建 SAM 的姿势,所以没有搞出来,而且今天好像发挥得不怎么好。感觉自己好像说错话了qwq,没有先了解别人的情况,更不用说考虑别人的感受了。

下午听讲一直没什么心思,盼望着出成绩,心里面很忐忑,好不容易今天感觉这么好,如果依然fst我也没有办法了。。。
拿到成绩单一看100+0+0+0喵喵喵???什么鬼。赶快去复测(参加了三次省选,今年第一次复测,还复测了两次)。发现大家T2都没分,果然T2数据有误。哈哈,叫你题面出那么复杂,把自己都绕晕了吧。
T3全部MLE了,没怎么想明白是怎么回事。复测完T2出来之后突然意识到自己手贱开大了空间:为了防止数组越界,我一般会把const部分的值调大,调大的方式是把其中一位数字。于是这次本来const int MAXL=1000000,我特别好爽,写了const int MAXL=1500000。这个MAXL要命啊,直接和 Trie SAM 的节点个数挂钩啊,每个点还有一个大小为 |Σ| (=26)的转移数组nxt啊。我强行开大了1.5倍,不炸了才怪啊。于是现在我只能祈祷我程序还有其它错误,不然如果我把空间改对就过了的话我会疯掉的。然后我想找评委复测一下,结果评委要rejudge所有人的T1T2忙不过来,还是明天吧。

100+100的话,感觉可能还要略低于大众分?可能距离B类线还比较远。。。看Day 2吧,可能Day 2会(被)拉开差距。
晚上有点忘了时间。。。玩着轻松的游戏比较晚睡(这就有点尴尬了)。


Day 2

为了防止有大数据结构题,试机先打了个link cut tree…
T1一眼连边跑最短路。T2一眼看见数据近似随机,内心OS:中大出题人这么潮流,出这种有理有据的期望时间复杂度的题目?然后就设计了一个基于随机的算法:将二进制拆成前 logn 位和后面的位两段,分别开桶存下对应段是特定值的数(我打了map套vector),因为数据是近似随机,所以在一个桶内的数不会很多,可以枚举。然后就按照三个不同比特位所在位置分类讨论一下就能做了。T3一点不会,感觉第一档部分分很奥妙,搜索都有点难打。。。T4什么鬼,感觉是大数据结构题,写个深度相关的暴力骗30分就跑路。
40~45min准备码题,出题人上来说所谓的近似随机是一个数据点2/3随机1/3构造。整个人都不好了。。。这时心里在想:算了,鬼知道他构造会不会卡掉我,打就是了。
弄完前两题心态有点爆炸,猜测别人可能都会几题,感觉自己今天可能拿不了比较高的分数,居然第一次在比赛时有了想要弃疗的想法。。。但是最后还是坚持弄完了T4的暴力,至于T3,最后想写双向BFS,写得差不多的时候时间不剩多少了,就赶紧检查其它题目了。

出来时感觉药丸,不过第二题没人会,第三题只有几个人会,所以应该也不会很惨。
下午就没有上一天那种迫切的期待了,心里想随便了怎样都好。
先出了day1的Final Test的result,去复测了第三题。评委告诉我过了的时候我真的崩溃了,一个人坐了好久都没有平复下来。如果是别的什么脑残低级错误我还可能情绪没有这么激动,可是这次真的让我感觉就像是随随便便送掉了100,是拱手让掉了100,程序都辛辛苦苦调对了,却在这种地方掉链子。
心情稍微好了那么一点之后去领day2的result,栋栋和我说不用纠结day1t3,今天我考的分比很多人都高。我一看100+80+0+30沃日。
然后又跑出去安抚心情了。。。天知道为什么这让我更加对day1t3感到惋惜。

吃饭时,栋栋告诉我他买了出题人手脚套到了目前的省队线是400,我是410。哇?当时我就懵了,毕竟真的来的时候都不怎么敢去想进队的事情,现在突然给了我希望,就有点不知所措了。

回到房间和栋栋猜SOI题目,既然出题人明说会有《中学生**题》,那多半是《中学生数据结构题》了,赶快复习一下link cut tree,明天试机再打一遍,绝对稳。
当晚心情很复杂,因为第一次真正体会到冲击省队的感觉(冲击省队的想法居然是考到了day2才有的。。。)

听说金中sxt和czl前两题都挂了,心痛,他们都很强的啊,怎么就在今年省选。。。


Day 3

前一天晚上很早就睡了,但是今早5:00就醒了,而且醒了之后心一直在砰砰跳,便躺了一个半钟等闹钟就起床了。

去考场路上一直到进考场,没有办法放空脑子,真的,第一次面对这种机遇,显得不知所措了。
试机出了点问题,于是换机了,便没有时间打一个link cut tree试机了。
一看pdf,中学生数据……栋爷你可以。
T1,嗯。。。暴力
T2,嗯。。。乱搞拿10分
T3,嗯。。。似乎可以dp?推了好久好像可以拿40
T4,噗。。。这不是栋栋sone0的完全弱化版本???栋栋这一回肯定笑死啊。
然后我就慌了,这满打满算好像才40+10+40+30=120啊,前面的题目不清楚,但是肯定一堆数据结构选手切T4啊,我这回死定了,没戏了。
然后想着要不我赶快弄掉前三题部分分然后刚T4?说不定还有希望?
没想到第三题卡了很久,一直过不了样例,式子改了一遍又一遍。然后感觉时间不多了,想最后一题搞出一点名堂还是赶快弃掉吧。
然后先上了T4暴力,打完之后开始想树剖做法,发现好麻烦,然后想LCT做法,结合一下剩余时间,感觉自己打不出来。。。
这时感觉心态要爆炸了,我咬咬牙,算了,破罐子破摔,全部拿部分分,能拿多少是多少,就这样算了。然后打掉T4的20分,还用10分暴力互拍。
回去调T3,重新整理思路,重写了式子,改了几下终于对了。此时只剩下30min,我感觉自己能做的已经做了,剩下的真的要听由天命了。
剩余时间检查,后来检查太多次了,干脆弃疗检查,想T2去了(相当于弃疗比赛了)。毕竟看起来像计算几何题。。。

出来时懵逼了,一个个都会T1T2T4,感觉自己要被踩死了。当时真的感受到了自己实力和别人巨大的差异。因此中午回去时感觉这次是没有希望了,自己也已经尽力了,便发了”I did it all.”的朋友圈。

怎么样,都无所谓了。已经很满意了。

下午带着看别人直播进队的心情去听讲,终究还是没有心情上台讲题,今年又错过,这样只剩两次机会了。。。
大概讲到第三题的时候,酱包回头问我有没有收到symbol信息,他说他被1/3卡了,觉得我可能有希望。我赶紧借了别人手机看看qq,symbol没有给我发东西。。。看来是没戏了。接着wyx和yjl也收到了被卡校线的通知。然后我认为自己连B类线可能都没到。。。可是是谁填满了1/3呢?
然后突然酸转头过来说我进队了?????????然后我懵逼了,赶紧拿过手机,好像消息是这样说的。。。
然后我控制不住情绪就冲出讲厅到外面去了。。。打电话时我的奇怪表现估计把爸爸吓到了。
回来时栋栋被钦点上去讲T4,666
拿到成绩单,和估分一模一样,居然拿满了。

于是乎最后卡在校线最后一名进队了。
真的,来之前想都不敢想。
day2下午吃饭时,栋栋也是这样鼓励我:“dp在上一年这个时候也没有想到自己能够进队。”
几年了,从初二省选之后,再也没有发挥得如意的比赛。
一直挂,一直失误,不知道多少次跌入谷底,不知道多少次看着别人的葡萄成熟,
而自己却依然在挣扎。
很不解,为什么,为什么会变成这样呢?
再怎么去尽力,总会有失误难以避免。

终于到了这一次,虽然day1依然有缺憾,但是后两天,无疑是我有史以来最稳定的发挥。
终于也能够重拾信心了。
我知道自己还有很多东西不会,还有些现阶段达不到的目标,但我也知道,自己的努力,还是能够创造很多“奇迹”的。
至少这一次对我来说,真的是“奇迹”了。

加油吧,THUSC&NOI2017。
I am making progress.


Summay

这次能够获得这样的成功,自己总结了一下,也许就是真的做到了把能拿到的分都拿到了吧。
不看day1t3的话,每一天都和估分一致。尤其是最后一题,哪怕在极端的条件下,即自己一题都没有头绪的时候,你依然是可以努力去多拿一点分的,只要用心了,就总会有希望在。
毕竟,对于大多数的选手而言,省队分是一分一分堆出来的,而不是一题一题堆出来的。
而要做到把能拿到的分都拿到手,则要求各种手段都要用上。比赛前的模拟已经让我意识到光靠对拍还是不可靠,于是这次我会很注意去阅读程序,每个程序,我都在一些特定的时间去阅读检查。还有我会去注意多次检查自己的思路,以免开始打的时候才发现是错的。而且我还尝试在一些需要决策的时候,把当前的状况(剩余时间、当前期望得分、我的决策能造成的期望得分和耗时等等)都写在草稿纸上,然后三思而后行。这些措施,都让我这次省选达成了0次fst的目标(MLE就不管了哈)。
缺憾的话,MLE的问题就是检查时还是太狭隘了,对有些地方太过放心,当然开常量的时候也没有想好这样做的可能后果。
还有就是永远不要猜出题人会什么。努力学吧,还有太多不会的东西。


After Contest

GDSOI晚上玩杀人游戏,虽然水群的人因为各种原因没有完全来齐,但还是很愉快的。
第二天合了两次影,然后大家就各分东西了。
czl和sxt好像真的退役了,内心无比遗憾,毕竟真心觉得他们有实力在更高层次的比赛获得好成绩。真的,省选这种东西,决定因素太多了,偶然性也太强了。
但是到头来,还是要靠自己稳定啊。
今年的校队分布似乎有点尴尬,但是也没有办法。。。毕竟,有些事,有些场合能做,有些时候就不能强求了。

不管怎样,最后还是希望AFO的选手高考顺利,今后继续圆梦;没有AFO的选手加油吧,让自己的OI生涯不要被缺憾画上句号。

你可能感兴趣的:(个人,杂文,GDOI,比赛总结)