同机房同学的:
10月3日至10月6日
学校组织S组模拟赛,但全都是原题大赛,所以每次都考了\(300+\)
10月9日
开始在机房晚上集训,刷了一些往年复赛的题目,16日也有打月赛,打了之后比赛情况暴涨50分。
最后三天把黄道绿的模板和部分蓝的模板过了一遍。
10月21日
这天是集训的最后一天,中途教练直接黑屏肃静,讲了一些有关策略的东西:
“你就直接把电脑的桌面改了,文件读写什么的注意事项全部写上”。
“一定要记住,不要死磕一道题。可以出去上个厕所,散散心。”
这两句话是我记得最清楚的两句话,也是我记得最不清楚的两句话。
10月23日
J组(8:30~12:00)
7:50进的考场,在那坐了好久都才开始。
我坐在离大屏幕比较远的地方,我把解压密码写下来之后我隔壁让我给他看密码,不会算我作弊吧。
直接用30min看了一下题。
T1是送的,写了之后还写了暴力对拍。用了不到10min。
之后开T3,不难发现是暴力匹配,我还用类似状压的方式存储每个IP串,时间复杂度\(O(n^2)\),也写了暴力对拍,用了大概1h。
之后开T2,发现修改次数不多,就每次修改都排个序,并用一个数组存答案。
之后发现每次修改只要让修改的数左跳或右跳就行了,优化到\(O(n\log n+Q+5000n)\)
用优化前的代码对拍,共用1h。
T4感觉没啥复杂度严谨的做法,之后用并查集维护删除数(用并查集代替链表)之后暴力删,删完一个就跳到下一个块里,如果下一个块和这一个块的元素一样就一直往后跳,也写了暴力对拍,设初始时有\(m\)个块,删除有\(k\)轮,复杂度就是\(O(n+mk)\),感觉应该有70分,共用30min。
发现T4在随机数据下好像跑得动\(200,000\),之后又试图hack也没超时。
最后不到半小时一直在对拍和检查文件。
10月三十日发现前导零判错了,过不去0.0.0.0:00
多半要去世
估分:\(100+100+60(100)+70(100)=330(400)\)
洛谷民间数据:\(100+100+100+100=400\)
10月30日初评:\(100+100+70+80=350\)
S组(14:30~18:30)
考场要求14:00进去,但是14:20才让我们进机房。
还是一样用了30min看了看题。
感觉T1可能是奇怪的数据结构,T2是码量大的区间DP,T3应该是思维题,T4不可做。
之后悲剧性的开了T2。
前一个小时把题目看成“超级括号序列不能有超过\(k\)个*
”,之后第一个样例输出4,直接硬调到比赛开始后1h。
之后思考T1用了10min,因为虽然想听教练的话,但是我还是想调T2,就没想出个所以然,用10min写了个40分的暴力就接着做T2。
重看了T2题面才发现只是\(S\)不能有超过\(k\)个*
,之后才开始打正解。
20min后打出来了,但是第二个样例输出28。我就开始调。
结果考场Dev Cpp不支持调试(不知道为什么,上午也有这个情况),只能输出调试。
直接调了1h发现ABC
这个情况没有判重,又开始写,写了之后发现输出20,不知道是写挂了还是有些重复的情况没有判出来。
又调试调到还有半小时结束时还没调处来……就去把T3的40写了,可能我很暴躁,一个dfs写了20min。
最后10min我只能绝望地盯着T2的代码看着,除了检查文件什么都干不了。
最后5min我开始回忆被我抛弃的T1,居然想出正解了:用线段树或某种数据结构算出每个飞机停第几个廊桥,之后开个桶算答案。
出考场之后发现T2的ASBSC
也会重复……
估分:\(40+0+40+0=80\)
洛谷民间数据:\(40+0+40+0=80\)
10月30日初评:\(60+0+40+0=100\),T1多给我20分耶,不过还是没有1=吧。
upd 11月8日:发现考场上没看到T3的\(2n\)个数中\(1,2,\cdots,n\)每个分别出现两次,看到之后就会做了……
总结
J组的T3或许将是我这次的败笔,被卡掉\(30\)分,虽然我对拍了,但是我没有拍出这个问题,这说明不能只对拍,还应该自己出数据。
S组是最大的悲剧,T2是一个大坑,而我却要往里跳。
最后交上去的代码应该去年的我也会写,也许去年的我还能拿更高的分数。
但实际上如果我处理ASBSC
会不会过呢,所以实力其实还是不够的。而且想到解法不能急于写代码,要先在草稿纸上看看有没有别的情况,在保证解法正确性、了解代码细节的情况下开始写代码。
当然,策略也是有问题的,先把T1AC,T3拿40分之后写T2,这样可能心态会好些。
而且T3居然还看漏条件了……这说明要仔细看题,不能看漏题目条件。
教练的那两句话,我真的有记住吗……
初中的OI比赛也就差不多结束了,接下来还要中考呢,能读我们学校高中部就最好了。
这次也不过算是一次试水吧,虽然这一年中所有学习的东西几乎都没在比赛中用到。
希望中考后我还能再回到机房,再次看到那些熟悉的面孔。
整理一下
- 不能只对拍,还应该自己出数据
- 想到解法不能急于写代码,要先在草稿纸上看看有没有别的情况,在保证解法正确性、了解代码细节的情况下开始写代码
- 要尽可能保持良好的心态,卡在一题上可以出去散心
- 不能一直执着于一道题,学会取舍
- 要仔细看题,不能看漏题目条件