NOI2024 游记

· · 生活·游记

NOI 之后,感觉都没怎么睡好过,每天都在随机时间突然醒来,偶有梦见 NOI 的,不过记得的都在 Day1 神秘结局后醒来,然后意识到 NOI 已经结束了……

NOI 之后还要给小朋友出模拟赛题、讲课,还要颓废,哪有时间写游记啊。

NOI2024 游记

竟然能去打 NOI。

感觉 NOI 的意义还是相当不一样的,之前似乎有人说“没参加过 NOI 的不算 OIer”

当了 7 年的假OIer。

Day ?

考前一个月去了 OIFC 成都嘉祥线下集训,每天模拟赛都座位随机 + 密码条,非常厉害。训练座位似乎是随机的,又在 zmx 旁边,看他又卷了很多道题。有的时候晚上和他 duel,有一次他 10 分钟过了一道 *3300,非常恐怖。我写的做法又难写、又劣,最后还卡了时间、卡了空间才过,耗时 2h+,太不牛了。

在嘉祥的最后几天,我还准备了个杂题分享,选了 3 个题,总共写了 9 种做法,不过 xj csyz 都润了,基本没啥人在听/ng

NOI 前最后一周去了巴蜀集训,总共 4 场模拟,最后 2 场和 UNR 撞了。感觉每年 UNR 都有 rk 非常高的选手没能拿到 Au,似乎 UNR 打的好,会获得 debuff;而 UNR 打不好则有可能会影响心态,于是 UNR 咕咕咕了。

不过,最后两场和 UNR 重合的模拟赛都摆了,看来要是打 UNR 真要被影响心态了。

Dx 似乎 UNR 打的很不好,Day1 还交错代码了,看起来很破防,而 cmll mermer UNR 牛完了。

总体来讲,除去最后两场模拟赛(真不能看),rank 都在 10 名附近徘徊,进前 5 和没进前 15 的都是一次,每次在极小的区间内浮动,不过总分就明显往前很多。根据去年联考总共 9 个集训队来看,看起来处在一个非常危险的位置。

而事实也确实验证了这一点。

考前研究了下 1kri 的 OI 与玄学,根据去年 ybw, zyx 喝了橙汁结果都没进,1kri 没喝橙汁就进了。总结出,喝橙色东西,最后就拿不到橙色的东西,所以应该喝红牛、可乐(Cu),把最不好的东西先喝掉,这样就不会拿到了!

Day -1

早上直接睡到了 8 点,一种久违的舒适。

参加了 QOJ 考前模板赛,基本都打了,获得了 QOJ蓝名,感觉很帅,同时做题数在 QOJ 上进了前 50(虽然现在又烂了)。

VP 了 UNR 的笔试,发现错了个给 mycpp.bak 创建 mp.cpp 的备份,只能说唐龙 1kri 素质就这点了。。

报道的时候由于教练还没来,要叫学籍单,还不能报道,开始说是扣身份证,不过后来由于身份证过多就,最后的解决方法是把胸牌扣了,这都是一些小小的插曲。

开始跟着群友去了 1009 自习室,不过有几个素质比较低的许淇文家长在高声联机打第五人格,之后问了问 Qiuly,到了 1007 自习室自习,后面几天也都在这边了。

后来 xj 的也来了,旁边是 cmll mermer,前面是 _YangZj_(小写)_,最前面有 yb using lf,教室左边有唐龙王漏鱼橙音乐,右边还有偷学 zmx。

后来国家队也来了,kubic sjy zak 坐在前面。

吃饭的时候,发现有可乐,这很对。

晚上主要复习复习笔试,大家在竞速!

刷了一万遍了,但还是很折磨。很怕自己笔试挂分,因为感觉自己的命运就掌握在几分上了(事实也确实如此)。

晚上回到了寝室,我们寝室只有 2 个人,我和 qlz 大神。qlz 说这几天一定不能感冒,因为感冒会寄掉,所以空调开 27°C。

不过晚上睡觉就是一件很糟糕的事情了。我睡在靠门的位置,27°C 确实有点过于热了,不过我也是真睡不着,很折磨。

在一个时间节点觉得能效仿在嘉祥干的事情,起来背下笔试,于是在 00:13 的时候,我起来背了背笔试,背了几分钟就困了))那确实应该困啊,好好好,之后好像很快就顺利睡着了。

Day 0

早上起来发现其实还好,只是我觉得对于考笔试来讲,这个精神状态足够了。开幕式 JS 坐在角落里,避免了被音箱、灯光随机击杀)很难想象已经到 NOI 了呢,甚至感觉上一秒还是 NOIP2022 的折戟沉沙)))))

中午直接回寝室了,了解了下别人在干什么,听从了 gqh 的建议,觉得中午睡午觉晚上会更睡不着。gqh 说他昨天似乎因为急性阑尾炎 1:30 才睡着,只能祝他好运吧。在寝室里用了用 gqh 发的一个工具网站背笔试。

遇到了一个很逆天的题,其它除了手机点错了一个都对了。

2 点多去试机了。旁边是 _YangZj_,后面有 Qiuly。

试机题竟然是 NOIP2023,这我不倒闭了,先写了个 T1,测了测 selfEval,一切正常。T2 不太想写,毕竟场上过了。T3 还不会)))NOIP 结束之后,就再也没看过了,感觉简直有心理阴影了,也懒得去补题,省选也是这样诶。T4 场上拼了 72 分暴力后,最后没调出来,本来还想写一写,写了一会儿,后面就又不想写了,感觉没啥意思。_YangZj_ 在写 NTT,那我也去写吧。QOJ 模板训练的时候 skip 了多项式乘法,那肯定是用不上的,然后果然调了一会儿才调出来,似乎是有几个变量名写错了。

3 点的时候访问了笔试网站,网很卡,一直没加载出来,然后就是工作人员说延时 15 分钟,接着就听到了一阵此起彼伏的笑声。 _YangZj_ 跟我说发答案了,我回头看发现 Qiuly 在打开 gedit 狂抄答案。我呢,我在点了几下刷新按钮,就发现网站无法响应,这我不是倒闭了?要是笔试扣分,这分谁给我补???

3 点 15 的时候,顺利开始笔试,都是背了 inf 遍的题,很简单,不过做的时候很小心,很谨慎,然后又检查了几遍,应该是没啥大问题。检查的时候,也是相当煎熬,深怕哪里选错了。不过还好笔试只有 30 分钟,熬了一会儿很快就熬到了,顺利 100 分了。

学习了下 SCZ C Au 学长 ReseeCher 的经验,看见笔试满分后长舒了一口气,告诉自己“已经先下一城”了,给自己壮了壮胆。

晚上又看了看模板,grg 似乎在复习自己做过的黑题,并感叹自己做的黑题太多了,看不过来。于是,cmll 也来点了我做过的几道黑题,随机点了几道,全是典题,诸如,NOI2019机器人,ZJOI忘了麻将,还有些忘了,总之就是忘了。cmll 说,今天晚上不做题,明天就不会做题了,很慌,于是去补了联考的一个 zak 题。

这是第一个小样例:

1
5 5 10
0 392094191
3 478637573
6 877058162
7 7653808
8 934400152
1 875521419
2 420533509
4 862560990
5 38369601
9 283588285

不太能要。。原来 std 是暴力写的,127 行为。。很短的代码调了好久才调过:(

晚上 10 点就睡觉了,感觉似乎好多了,感觉估计在 11 点左右就睡着了。

Day 1

这就 Day 1 了。这就 Day 1 了。这就 Day 1 了。这就 Day 1 了。这就 Day 1 了。

考前听说这两天可能有 JV 题,很慌很慌。

进场发现右边的右边是潘队,右边是联考 cyez 的,左边是 xinyoudui lkl,左边的左边是 lak,左边的后面是 A_zjzj,右边一些的后面是 gqh。

罚坐了一会儿就开题了,感觉平时都不看纸质题目也没必要看了。开题发现有交互,顿感局势不妙,平时 duel 遇到交互一般会 /duel cge,这下怎么 change 不了了呢。看了看 T1 发现,排列的本质相当于是存在一组匹配,两个数能匹配,当且仅当在两边出现位置的集合相同,于是我 unordered_map <ull, int> 下就好了,很对啊!发现似乎不能莫队,不过显然是有单调性的,于是双指针一下就好了。

写了写发现因为是异或,所以 ins()、del() 的函数代码甚至是一样的,还挺牛)

20 分钟的时候就写完了,测了下样例发现都过了,不过 selfEval 怎么都是 compile failed,我把我的代码改来改去,都无动于衷,甚至改成空代码都没用。我注意到是 compile failed,不是 compile error,而且比赛出锅也是很正常的(参照实际),所以举手求助了下工作人员,然后工作人员回复我说这个他管不了,不过可以帮我问一下,然后就跑了,也没有答复。然后我就去看别的题了。过了一会儿,广播就喊 selfEval 出了点问题。。

T2 很神秘,感觉是一道乱搞题,做的时候很错,第一步就很错。首先 sub1 是直接完全图即可,然后我还会每次折半合并,跑分治,这样 S 很牛,但 T 就很菜,然后我就想能不能把两个做法拼起来结合一下呢。当时想了想感觉可以分块,对于块内跑分治,对于整块直接跑完全图,然后写了写,甚至还写了个程序算最优块长,感觉不如手调。好像至少这样搞算上 sub1 只有 57 分,很自闭。后来又怎么搞好久好久,最后搞到了 69 分,感觉这个分完全不够啊,但没办法,甚至一点思路都没有。

想 T2 的过程中,去测了一下 T1 的 selfEval 发现竟然测试点数量和题面的一样,后来看了看题面,感觉应该是 pretest 赛制,这下至少会安心很多。

T2 不知不觉就搞了 2h,被迫看 T3 了。T3 得多拿分啊,发现有 56 分的 n\le 2000,这肯定得拿下吧。感觉已经退无可退了,硬着头皮去做了。想了个类似 AGC33F 的做法,由于有些边的方向确定,所以不停地把限制变到最紧,然后再发现有边的方向可以确定,这样一直做如果没有矛盾就说明合法,这太有道理了,然后发现确定字典序最小就只要如果这条边没确定,就可以随便确定,否则按照确定的方向。总共差不多花了 1h 拿下了 56 分。

然后发现还有 8 分的菊花可以拿下,仔细想了想,我的做法时间复杂度是跟所有限制的路径长度相关,这肯定是能过菊花的,于是我把预处理 LCA 的部分换成每次求一下,结果甚至多冲过了一个 n\le 10^5 的点,拿到了 68 分!思考了一下更后面的部分,但很遗憾,没太多想法。

之后的时间就是在肉眼检查代码和 T2 继续乱调参直接徘徊,没有拿到更多的分数。

最后 pretest 的得分是 100+69+68=237

出来之后问了一圈发现好多 264,很慌。T2 似乎是简单题,很多人都过了。啊???那爆干净了。

kv gzy zph yb using 都 264,lgd 似乎跟我差不多。

平静地去吃了个饭,然后听说 Pub AK 了,他要冲榜了。zxb、little09 也几乎 AK 了。

不过似乎 Qiuly 漏宝考的很寄,qzx、xjc、crz、yx、cy、dsj 也不高,gqh 似乎被 T1 创了/ng,期待一下皞爸的绝世翻盘。

不过听说有人 T3 pretest 反向拿了很多分。

3 点去查分,没有奇迹,T3 n\le 10^5 一个点都没过,最终得分还少了 4 分。

最后 finaltest 的得分是 100+69+64=233,接受了自己比队线低十几分的事实。不过也没有太难过,至少感觉明天怎么打都不至于铜牌)

讲题决定鸽了,感觉就别去影响自己心态了。

之后跟着别人乱逛,然后大家都去打球了。我先和 zph 打了会乒乓,发现 zph 很会扣球,似乎 zph 完全不会接我发的上旋球,每次都无一例外打飞)发了几个之后就不发了。不过 zph 还是很会扣杀的,虽然成功率基本上就五成。

后来 zph 走了,去打羽毛球了,感觉国家羽毛球二级运动员还是太有实力了。之后回去洗了个澡,然后发现教练要我把讲题的 PPT 拍给他,爆了。

发现 Day1 几乎没考什么算法,板子还得继续复习。不过,晚上教室里在打 gen,开始在看 kubic 1vs1 吊打别人,一直在说:“但是对手很菜,真的很菜。”后来机房里开始联机,开了个 room 组队打,很趣味。

Day1.5

JS 是下午去博物馆,本来想多睡一会儿的,结果早上 6:40 就自然醒了。上午听说撞车了。这天早上还是复习了点东西的,中午就去集合了。排队的时候用手机打了局 gen FFA,居然还赢了!希望不要消耗 RP 啊啊啊。

感觉逛博物馆还是太无聊了,不过来都来了,还是仔细听了一下。

然后快结束的时候,导游问了句“我们现在讲了几个十大镇馆之宝”,我过程中听到一个就稍微记了一下,感觉记的很清楚 4 个,然后导游说实际上讲了 7 个(樂。

一路上感觉很热,博物馆里几乎没有空调,回学校就立刻把澡洗了。

注意到我 PKUSC Day1 也是 233 分,然后 PKUSC Day2 得了 230 分。感觉明天要是能有 230 岂不是很好!

晚上很早 <10:00 就睡了。

Day2

感觉昨天晚上睡的还是不错的。JV 题估计就在今天了,希望不要被创飞。

进场,发现左边在最边上。左边的左边是 jcy 大神,右边是 hcq,右边一些是 zyh。

230 的目标从第一题开始就破没了……开题,看到 T1 就意识到很可能是 JV 题,感觉不妙。写分析了下性质,对着 O(n^2\log n) 暴力判断的程序打表,找了找规律发现没啥想法。

点开了下大样例,发现答案似乎不是很大,于是就写了写暴搜,随便写了下发现就 85 分了。想了想发现可以处理一下,一测发现就 90 分,这个时候差不多不到 1h。95 分的那个点要跑 7.4s,还是很想拿到这 5 分的。于是搞了很久,卡常一点效果都没有。写了一个搜连续段的东西,写挂调了还久,结果调出来一跑发现要跑 20s,非常疑惑,这个不应该会更劣啊,统计了一下计算次数,发现少了一点点,估计是递归导致的,这个时候都将近 2h 了。

感觉很破防,看了看 T2,感觉是一道比较困难的题,看了看部分分发现最后一档 40 分,这下肯定得会正解啊啊啊。仔细想了想发现很快会了个 O(n\log ^2 n) 的树剖 + 线段树维护类似历史和的做法,再一看 n\le 10^5,2s,这不是稳了吗(这个时候没看到有 5 组多测)

上了个厕所冷静思考了一下做法的正确性,感觉没什么问题。不过回来才发现有 5 组多测,感觉应该也是能过的,就开始写了。发现其实远没有想象中的难写,把 Tag 封装了一下处理两个 Tag 之间的贡献,就很简洁了,差不多 1h 就写完 + 调完了。selfEval 跑了 0.7s,感觉很稳。

这个时候开始看 T3,开始先想了个假的平方做法,2 类点判的很有问题。写完一测,发现 selfEval 只有 10 分,然后意识到全假了。于是开始冷静思考部分分,发现相当困难,不过似乎我会的弱智分数有 25,于是写了一下。其实开始我没写第一个指数级的小数据,但假做法似乎过了这 5 分。为了保险起见,我还单独写了一下。

剩下差不多 1h 时间就在 T1 的多拿 5 分,与 T3 的 BC 性质之间切换,中间还是忍不住想去找 T1 合法的性质,最终没有任何收获。出来的时候感觉非常神秘,感觉 T2 有一定难度,应该不是所有人都过了,但又感觉我没做太久,大家可能也都做出来了。

最后 pretest 的得分是 90+100+25=215

出来的时候 jcy 说他寄了,我吓坏了,jcy 省选 Day1 也坐我左边的左边,然后打得很寄,岂不是我的问题)

告诉了旁边的何老师我的分数,何老师说他要退役了,祝好!crz 好像考的也不太好,很遗憾。

出去碰到 lgd,他也是 215,不过他第一天比我高 3 分,236,基于他 Au 的概率为 1,感觉我还是有一定机会的。

kv 好像没过 T2,但是他 T3 55,并说这是送的分,只是他脑子好。zph 也没过 T2,他 180,此时意识到如果不挂分就把 zph 翻了。

比赛时没吃东西,但中午就是完全不想吃饭。

自习室遇到了 Pub,他好像也没过 T2,不过他 Day1 AK,还是比我高一些。

下午去查分,没挂。

于是,总共就是 100+100+69+64+90+100+25=548,能赢吗。

Bronya 考的巨高,就比 _LHF_ 少了个 A,怎么同样是 C 类,差距这么大呢。

民间的队线一路从 529 传到 534,怪兽、houzhiyuan 比 NOIP,最后到 quizx 说他 rk51。感觉 qzx 水平明显在我之上啊,祝 qzx 明年好运!这下 JS 只有 6 个 Au 了。

jcy Day2 205,太批话了!总分还比我高 3 分。

我算是继承了 ducati 的衣钵,不过排名还是比 ducati 差了不少的。

晚上有榜了,跟 3 个人并列 rk39,但根据同分比 NOIP,我应该是 NOIP 最低的,NOIP 考高点啥都有了啊啊啊。

晚上去嘉年华玩,最终拿下了唐龙!

Day3

比较匆忙,领完奖就润了。似乎是跟 nfls 的 wfh lxy qlz CB splay lson 一班飞机。

迎接新的生活!