退役两个半月了再谈这个真的好吗……真的应景吗……
这篇文章主要是自我勉励,还有给之后奋斗省选的学弟学妹们(有生之年能看到loi有学妹奋斗省选,真的感觉值了。如果有,请这位学妹联系我)看看,不要犯和自己一样的错误。
这是我的噩梦,是我现在想起来还会心痛的日子。
报到日。
早上到机房,a,lcy,swc,xczhw早就在机房玩起了魔塔20层。还记得临走的时候,swc在以每秒四滴血的速度打着最终大魔王,自己不伤血。大概要大两三个小时。于是选择挂机,坐上车去的济南。
在远离山东省所有神犇的如家酒店住下了。我自己一屋,另外四人两人一屋,教练自己一屋。
与fqk、yzy、yts他们水群,却也最终没见到面…还记得在电梯里看见qdez全体,所有人都一脸茫然,只有污神欢快的打起了招呼。随着电梯门的关闭,我们也互相看不见对方。
这一次,是五个人,下一次,就只有我一个人了。
晚上去了对面的【纸上烤肉】。记得xczhw放了特别多的油,服务员把我们要的肉搞成了金针菇。
回房间后一起打游戏,发现move or die特别好玩,于是联机打了很久。晚上自己打了两盘以撒就睡了。睡晚了,十一点多才上床。
自己一个人在陌生的宾馆房间里,四周黑漆漆的。联想到明天的一轮省选,心神不宁。天花板上印出的亮斑在闪烁,又想起来了fqk神犇说【如家有鬼】这种玩笑话。那一夜我好像很晚才睡着。
没睡好,困。
要抽座号,大家都在排队。我才意识到我来晚了。
进去后发现yzy和我一块,都在一号考场,我们之间隔了一排人。
我的机位是最里面的倒数第二排中最靠后的那几个,面朝墙壁。
windowsxp的机子,桌面上分好类的图标。我看见了devc,freepas,cena等等常用软件。
我打开了devc,写了一棵线段树。因为来得晚,没写完就发卷子了。
至今我还清楚记得那三道题目的知识点。或许题目的细节我已经忘掉了,但我记得的是,我考得很差。
T1是一个位运算的题,但貌似需要数位dp,看完就写了个暴力弃疗了。
T2是一道奇怪的题。完全看不出来怎么做。
T3是树上搞各种东西的题。第一次遇见树上维护一个一次函数。
刚开始,所有人都在敲着键盘,声音很响,很嘈乱。我努力让自己静下来,自我安慰道【水平低的人才会不读题而是看完题就写】。
具体的解题过程我忘了。只记得T3写了三个多小时,迷迷糊糊把题看错了,把它和今年WC的线段树搞混了,还庆幸幸亏从HN回来的路上看过了。结果只拿了个暴力分,简单树剖的分数都没拿全。
之后怒刚T2,想了半天10w数据范围的解法但想不到。后来一看n<=200。
T1想了想,感觉部分分可做,但为时已晚。
清楚的记得我右后方的yts敲键盘的声音是多么的大。自己花了三个多小时写T3最后也没写出来什么,听着四周啪啪啪敲键盘的声音…慌了,心态开始逐渐出现问题。
考完算算分,暴力分。
出考场,我和另外四个人的分数差不多。心灰意冷。
后来,听说很多人都挂了。有人说T2是SB网络流,T3是树剖。
回去的路上吃了个肯德基,表示贵。
吃完饭在宾馆,听说自己暴力分都没拿全,顿时想砍人。在教练讲话的时候,花了五分钟想了想T2的网络流,于是get正解的时候……我觉得没有人能理解我当时的心情。
暴力分70,我50。heheda300,还有一些人100多、200多。而我的名次甚至进不了前四十。
我知道很多人都挂了,但没人比我低。yts写T3正解写挂,于是和我一样的分数。
听教练讲完话之后,他让我不要放在心上,专心把明天做好。而我听到的是失落的语气,我的想法也暴露在脸上。他们都在安慰我。
独自回房后,我关上了门。只有我一个,真是清净啊。
我想起了loi前辈的R1成绩,想起了在HN的培训,想起了当时noip后决定省选的自己,想起了想要冲击省选却不得不停下来的大家……
已经很久没有如此痛快地大哭一场了。
我怀疑了自己的选择是否有错,我怀疑我自己的实力……我的心态崩塌了。
我想起了55级是多么不受人待见却考出了联赛历史最好成绩,我想起了教练对五五级的省选的不抱希望的态度,我想起了哭着想去省选的xczhw,我想起了惨遭劝退的lyh,我想起了无奈地说【我不想去省选】的zjp。
我曾经对自己说过,我要背负着五五级所有人的期待,我要替五五级其他想去省选但去不了的同学取得好成绩,我要顶着当初【最差的一级】的名号,创造出省选的最好的结果,我要在省选上考出最好的成绩,实力进队,让五五级成为最风采的一级。
我还记得当时在博客里,手边抖边敲出的【2016夏,绵阳见】,我想起来为了这句话我半年来在机房的努力。
可我却拿出这种成绩,这种答复——我是失败者。我败了,彻彻底底败了。
这是我当初,在心理极度崩溃的情况下写出的文章:记SDOI2016 R1。
可能你们体会不到我的心情,上面那个文章也可能完全看不出来。可能只有我自己才知道那天究竟发生了什么。
我向自己说:day2不翻盘,以后就再也不进机房了。
感谢学妹jc的安慰,帮助我调节心情。
本来不打算吃完饭的我,八点钟和大家一块出去吃饭了。没有人提起今天的成绩,我们只是做自己本应该做的事情。
照常打游戏,不海鲜过敏的我还战战兢兢的问这小龙虾能不能吃。
回到房间的我,还是感受到了悲伤。不过我已经不在意了,我希望我的day2发挥得更好。
又没睡好,起晚了。
大家决定不在宾馆吃早饭,于是在路边摊吃的油条豆腐脑。事后教练还说我们不要在考试的时候吃这种不能保证是否干净的食物…
上考场。
T1是SAM裸题吗?字符集10^9?好吧SAM没法做,去想SA吧。
T2这不是SB题吗。幸亏记得错排公式,答案很显然啊。
T3是啥?等会推导一下。
先开始写T2,写完了错排还有求逆元啥的,过样例了。测了发极限数据,发现差不多,就没管。此时才过了半小时。
然后T1。觉得SAM可以对拍于是写SAM,然后觉得没法拍然后写了一半删了(这是我最大的失误)。于是写了一发hash。
发现倒着做+SA可以对lcp数组搞搞,把贡献减掉就可以了。
码码码了很久,发现已经不会写SA了,搞了很久才写对。然后发现过样例了,和hash一拍没问题,然后就没管。
之后T3。推了一下是要最小化一个什么东西,发现是DP于是设计状态…发现和最后一段有关系所以把最后一段是多少也放进状态里了…发现这dp还挺难写的,于是写了很久终于写出来了。
一推发现可以斜率优化,但不会写……因为推出来的式子很奇怪。
于是觉得自己260没问题了,出来后到处炫耀。
感觉自己终于没有愧对自己半年来的努力。
140分。
T1是0分,T3因为状态不合理所以40分。
听讲题,发现要线段树维护被删掉的lcp的区间,方便找到上一个合法的lcp是哪个,但我固执的认为不需要线段树也能做,因为当时脑子被这个分数冲垮了。
回去的车上,我坐在椅子上。另外四个人都睡着了,只有我翻来覆去,一直在想到底发生了什么。
我和教练说我不用回家。于是我回到了机房,告诉自己忘掉这件事情。
疯狂地打游戏,让自己忘掉这些事情,是我的常用手段。
最终,我发现不加线段树是不行的,我发现DP的状态设计地是多么得烂。我的成绩没有任何问题,是全省35名,距离第十三差了整整一百分。
我是平常和我一起水群的人中排名最靠后的人。
yts的day1是50分,然而他的day2AK了。
明明题如此简单,为什么是这种结果?
最终,我失败了。我被SDOI2016R1打成了一个废人,我是有史以来R1成绩最差的人。
我清楚的认识到自己的实力,我也发现自己的考试策略是多么的糟糕。
后来fqk告诉我,T1对拍不出问题的原因是random数据时,字符集不能太大否则导致没有重复子串。这个问题是他强行设n为100的时候,答案为4950时意识到的。
R1结束的第二天,我用SAM一遍过了day2T1。我才知道原来字符集再大,复杂度也没错,加个map就可以了。边数和点数都是 O(n) 的。
然后交了个day2T3的骗分,竟然过了。然后学着写了斜率优化。
之后按自己的想法写了一发day1T2,也过了…
发现自己day1是50分的原因,是T3的部分分写的太多了,导致数组过大MLE,少了25分。
实际得分:50+140=190。折合NOIP后是第35名,是一个基本无缘省队的名次。
理想得分:155+260=415。排名很靠前了。
不敢说全部拿到手。
如果我day2T1写上了SAM。
如果我day2T1把60分的hash交上去。
如果我仔细想一想day1T2。
如果我day2T3的状态设计的合理一些。
没有那么多如果。你的分数低,你的水平就不如人,就是这样,仅此而已。
后来,教练劝我回去学文化课,省选就此打住。这时也是CTSC和APIO交钱的最后一天。省里的人专门打我的手机催我快交钱。
而教练却让我不要再搞了。
我极力反对,他甚至在没和我商量的情况下叫来了我父母。幸亏我父母和我一个意见,我才能去CTSC和APIO。
因为教练,我没有去WC,没有D类去NOI。我的OI生涯中最后悔的两件事全是他造成的。然而当时并没有想到WC这件事情,D类也是后来的事情了。
从这次劝退,我第一次对他产生了厌恶之情。
(这里要说明一下。我知道他是在为我的文化课着想,但从我个人角度上来说,就此打住将是我人生的遗憾,不去CTSC和APIO也会是我极大的遗憾。他是一个现实主义的人,也许正常人看来就此打住是性价比最高的一条路,因为在SDOIR2中,想反超三十分是很难的。从我的角度,我是打心底不赞同和厌恶这种做法,然而放到其他人身上可能并不是这样。我选择了这条路,我也有能力选择这条路,但从中途中断,这是我最不能接受的结局。我将在关于我的D类这件事中详细介绍。)
一、字符串类题目对拍的时候请注意字符集大小。要做到数据中出现相同子串才可以。
二、即使很有把握的题目,对于小数据也要交上暴力。
三、对于DP的状态(包括但不限于此),若发现有问题,尝试换一个状态表示方法(换一个角度看问题)。
四、千万千万不要死抠一个题占用太多时间,要做到时间资源合理分配,每个题都要留一段时间去思考。
五、紧张就去上厕所。一个人在厕所可以有很好的思考环境。
六、考前一定要睡好!!这一点很重要。
七、从多方面看待一个人。
这是退役之战,我们将面对最不靠谱的题目来决定自己的未来。
(这是出题人doc在考前从SD其他选手博客中发现的描述他的题目的形容词,他自然很不喜欢。但事实就是如此。我退役了,我不怕。)
自己一个人。
还是远离山东其他神犇的如家酒店,还是自己一个人的大床间。
在和教练边聊边去报道,路上碰见jlf和zyz神犇,打了声招呼。
回了宾馆,发现fqk&&yzy已经到了,于是决定找他们玩。我和fqk还有yzy还有sxb四个人在大门口傻杵着不知道干啥,到现在还记得清清楚楚。
在对面每个人买了几个肉串,然后不知道干啥了。还去了一个大超市,进了门接着就都出来了……尴尬
于是经过提议,买了个锅贴。于是去了fqk&&yzy的房间。sxb和他俩一个楼,而我离他们很远所以只是来瞎凑热闹……
然后在房间里也很尴尬,看见fqk和yzy大爷的床头一堆团成团的卫生纸默不作声……假装没看见……
放了个girigirieye,他们好像不感兴趣,yzy说好毒!尴尬……
想下个issac带他们入新坑,结果好像网速秘制鬼畜所以弃疗。
然后吃完外卖我就回去了。
路上买了点士力架啥的,就回房间水群,然后睡觉了。吸取教训,睡的并不晚。
吃完早饭去,并不是很晚。惊讶的是我坐标是sxb,害怕。
题目印刷出问题,所有的英文和数字全部错行了。我想问题面印出来你们不看看?还是刚印出来热乎的?于是花了很久把题念了一遍,考试延长十五分钟。
T1是博弈论,还没看完题就弃疗了。
T2是一个奇怪的字符串题,难道又是和去年的字符串一样是送分题?
T3是树上找字符串的题,看完题就觉得是点分治,说不定能做。
然后码码码T3,发现点分治在SDOI应该爆栈,并且还专门在考场说了一遍【注意栈空间】。于是就差一个函数就写完了的点分治,注掉了。于是被SDOI的栈空间给坑了。
优化一下暴力,发现随机数据跑起来还挺快。然并卵。
剩下的时间全程T2。发现并不是送分题,和去年的题相差甚远,可能是一个网络流,但我不会啊。于是各种随机化啊贪心啊什么的乱搞一起上。因为我知道去年doc因为数据水送了不少分。
最后T2写了六百多行,成功成为我OI生涯中写的最长的代码,并且竟然是考场代码。
快考完瞟了一眼旁边的sxb,发现他全程都在码T2。
考完了,问问大家基本上都是20分暴力。fqk多写了个博弈论的暴力(我觉得这个超难写的啊……),yzy多写了个T3的树形DP。
因为编译命令蜜汁有C11标准,导致很多人T3写hash变量名的全CE了,爆零。再三确认没人使用C11的特性后,改了编译命令重测。
因为结果出来的太慢,所以很多人都走了。yts留在这里等成绩说doc的题的暴力他都每题写200行,太没人性了。
最后yts惨遭爆零,T2的暴力的复杂度根本不对所以没人得分,sxb的T3的暴力挂了然后全程T2的网络流没写出来惨遭爆零。fqk因为多写了一个博弈论暴力所以30,yzy多写了个树形DP所以是60,我的六百行代码一分没有所以是大众分20,wmy的暴力挂了,爆零。zyz出了奇怪的错误,10分。
发现20分的有18个,害怕。T2好像没人得分,T1有分的人很少,所以这场比赛关键看T3有没有人写60分算法。
虽然数据是10w,但树高是n/15左右的,所以不会爆栈。
我日你先人,还我40分!
等成绩的时候,饿的慌,出去吃饭,和ypm一起吃的,好像我俩互相眼熟都是因为水群…不过ypm不水群,我是看别人提到他才认识他的。
他吃的很快,很快就走了。我吃的比较慢(因为不想吃太快)。外面还下着雨。我吃了很久之后就回去看成绩了。还看见doc了,用手机在水群。
回去的路上淋了雨,不过没啥大事。浑身是水凑近看成绩。发现很多人爆零,很多人重分……后来要走的时候syzx的人也来了,我就又看了一会。
回去的路上买了把雨伞,之后就回宾馆了。
晚饭定了个外卖,外卖大叔穿着雨衣送外卖,挺不容易的。不过这也不能作为迟到半个小时的理由!讲道理那家饭店走着去都没十分钟!!
fqk发来了一个榜,是折合了R2D1的榜。yzy在前十三内,fqk是第十六,我是二十多,wmy排在我前面。
进队的希望渺茫。不过还是水群更重要一些。也不放在心上。
还记得fqk说:yzy稳一波就好辣!我只要再加把劲就好辣!
然后wmy说:我都不在这一页内…(指第一页)
我问:我在哪?
fqk截了个二十多名的图
………………
从机房随便拿的充电线不好使,手机总是充不进电,所以很快我的手机就没电了。教练来问了问成绩,扯了扯闲话,就走了。我也没给他看榜。
手机没电关机了,所以我看了会电视…其实就是一直在等手机充上电,完全没啥好看的,也很久没看电视了。但手机就是充不上电,所以决定睡觉。
睡不着,时不时看看手机充没充上电,发现并没有充上,内心是崩溃的。
一天都没有想成绩的事情。相反sxb则失落地在群里说自己爆零教练发朋友圈“可能没希望了”然后删掉的事情。
至于我,除了对那四十分耿耿于怀以外,心态还是蛮正的……
提前半小时到,手机没有电。这时候到了的人很少。
和wmy闲聊了一会,之后看见fqk和yzy然后怒膜一发,后来看见yts他们,再后来就进场了……
记得最清晰的,是yts默默地念叨【这可能是我五年OI生涯中最后一场比赛了…最后一次了…最后一次】
伴随着这句话,我走进了考场。
T1是一个形似插头DP的东西,但数据范围奇大。我没写过插头DP,也没看过原理,但我知道很难。doc在群里说过【插头DP年年有,今年特别难】。
T2读完题为什么一股普及组的感觉?我想到了noi2015D1T1。但数据范围好奇怪。
T3是计算几何,超恶心。
速度写完T2,然后发现没啥问题。
此时我心想,普及组题目大家应该都会做,应该多搞其他题的分数才对。于是我开始用我半年没有碰的高中数学死磕从未见过的三维计算几何。
一开始看错角了,以为那三个角是一个三角形内的。当时竟然忘了三角形内角和是pi!于是写了一发输出竟然过样例了!
样例是一个边长为1的立方体,我算的时候是三角之和-pi,应该等于0,但浮点数误差会有一个很小很小的数。以为每个面都是同样的计算所以是同样的误差,所以一算加权平均自然能过样例了…
认识到这些是我改了改样例发现不能过的时候……
于是在厕所思考良久……直到最后发现我不会求二面角
因为day1的博弈论暴力没写所以少了十分,今天的十分显得很关键。于是半小时就写完了那看起来超难写的十分,只不过||写成&&找了半天……
最后还有二十分钟的时候发现T2不对,会炸longlong。于是加了玄学优化(例如改成long double),如果出题人不卡那就万幸了。
最后计算几何还是一分没拿到,心痛。
fqk好像T2忘了判不连通(这个我还专门问了doc会不会不连通……),yzy的T2为了防止炸了写的分解质因数,wmy好像又挂了,yts显得很兴奋说为了防止乘炸他写的取log,就是怕被卡精度。
他们怎么T2都写的带权并查集,就我是bfs……好方……
然后教练来了,我说也就40。然后他进去看成绩,然后马上出来了,说现在还没评完,我rank3,110分。我大吼卧槽我写的bfs暴力竟然A了!教练说我别咋呼……
后来评完了,ytsA了T2,fqk的T2挂没分了,wmy惨遭爆零,yzy大众分,我大众分,sxb大众分。很多人的分数都是100或者110,或者是爆零什么的。
讲题,T1是很恶心的dp,T2doc给的解法是带权并查集和分解质因数,yts很兴奋说他写了取log也过了。全场唯一一个A掉T3的zff大爷几句话秒了T3,我没研究计算几何我听不懂。
最后教练激动的在算分,因为110分确实不低。
成绩和昨天差不多。T1没有超过10分的,T2大部分是100,T3只有几个人有分。
zff大爷凭借一道计算几何,从无缘省队翻到A队。
记得lpy在从第一名开始念名字,我的内心也在一点点数着数字。时间静止了,四周很嘈杂但我完全听不见。只知道我既不是前十三,也不是前十六。
最后我还是没能进入前十六,没有进入面试。走的时候想拷走数据,但电脑识别不出我的硬盘。
走的时候我知道yzy和yts进队了。我拍了拍sxb还有maghsk说加油。我记得fqk悲伤地在走廊里打电话,并且跟我说退役了。
这可能是我五年OI生涯中最后一场比赛了
……
这就是我五年OI生涯中最后一场比赛了
………………
和教练闲扯着,他们在面试,我和教练在外面等车。
试探性地问了句,可以搞D类吗。得到的回答是建议:否定。
坐在回家的车上,什么也不想。唯一的希望就是他们未来都顺利,毕竟是战友,也是对手。
也幻想教练突然接到电话通知他出了问题,我是前十六,要接受面试——当然,这是不可能的。
在上学的时间,一个学生坐上了在始发站的公交车,怎么看都显眼。不过我还是坐回了家。
听说qdez的Davidxu被面试刷下来了,上去的人又是slyz的。我想到了一年前的小绿(zdm)。同为受害者,顿时为他感到惋惜。
我已经麻木了。或许是被吓到了,或许是暂时接受不了。记得fqk晚上在群里说重写了一遍就A了,就这样错过了省队,也为他点蜡。
回家之后发生了什么,我也忘了。只是记得和平常一样做着和平常一样的事情……现在看来,可能是一种病态了吧。
省队名单很快出来了。
我是rank20,fqk变成rank29。yzy靠着稳定暴力进队,yts靠着R1D2的AK进队。wmy如愿以偿地结束了自己的OI路,回去搞文化课。sxb没进队,还被rank16的slyz的往后卡了一名。
后来我连续没日没夜地打了五六天游戏,也打了几场CF。从回去的第二天开始,我就开始后悔,开始反思,开始想那些令人崩溃的事情。
差了十几分。
如果我R1写上hash的暴力,如果我能A掉任意一个后来我过掉的题
如果我写了博弈论的暴力,如果我写上40分的分治
结果就是两个样子。
然而,没有这么多如果。你分数低,就是比别人差;你没写,就是不如别人。OI比赛就是这么残酷,即使它的结果受多方面控制,但它就是一个残酷的选拔性质的比赛。你分数低,你输了,就是这样,没有其他的说法。
省选过后,就注定了我们未来的不同的路。原本同一个考场的OIer,一块愉快水群的人,逐渐分出三六九等。逐渐出现了一个“SDOIer省队群”,而退役的我是不能加入的。
我向教练说我要D类,他跟我再三强调说希望不大,我说我就要,让他给我报上,他同意了,我就没再管。
sxb和wmy很快回去文化课了,只不过sxb被教练叫出来,希望他能为D类继续搞,他则一副嫌贵不想要的样子。wmy则如愿以偿搞文化课,这是她盼望已久的了。
我和fqk同命相连,fqk不想要D,后来发现我们都要于是他也要了。
我当初建的胡策群中,只有yzy和yts进队了。
从R2刚开始,就一直和HB的zyk联系。他评价SDOI比ZJOI还要难,说博弈论那道题暴力太难写,说SDOI这样搞下去吃枣药丸。
后来结束后过了很久,他问我退役以后打算怎么办。我的回答是
当然这是后话了。
大概在家呆了五天,没日没夜玩了五天电脑。终于返校,报名pkusc和thusc。于是我在机房打了一周的游戏,也在机房呆过一晚上。
这大概是最后的狂欢了吧。从此之后,趋于平静,机房再也没有属于我的位置。
一、在标准分算法面前,10分是很重要的,所以一定要写满所有的暴力分。
二、10w的数据,不要担心爆栈问题,总有不爆栈的数据。就算爆栈了,那也是很多人都爆栈了,也不用担心,抓住其他的得分点也很重要。
三、一定要好好看数据范围,对于题目中给出的但不明白的地方要仔细思考。它的存在必有它的价值,尤其是数据范围这种东西。
四、不拿手或者没见过的东西不要在考场上死磕,因为结果必定是搞不出来。
五、再烂的题目都会被拿来做SDOI的省选题,所以请在题目的选取上拉低自己的智商,否则会被这智障题郁闷到死。
这里解释一下,我的R2成绩不算差,但第五条就是发自内心地在说。
希望doc这种出题人早日离开OI的出题界。我不知道在省选六道题中出四道莫名其妙的算法还有难度的题是什么意思(鬼畜DP,三维计算几何,博弈论,鬼畜网络流)。NOI中目前看来不可能会出这种题目,并且博弈论和三维计算几何更是少之又少。这种单纯增加难度的题目完全没有给人好的感觉,并且单纯看得分也是少得可怜。
现在出这种题,只有两种可能。
第一就是出题人错误估计OI的发展趋势,认为这种题并不过时。我认为这只能说出题人没见过NOI的题了。见过的话估计是脑子有坑吧。
第二就是出题人是按自己的心情出题,和趋势什么的无关,任性的出题人不看趋势。那出这题只能说是没良心,显得自己技高一筹,刻意为难选手了。
我知道这几段话找喷。不喜勿喷,不接受谈人生,不接受对骂。我就是图自己写着爽而已。还是那句话:反正我OI退役了。