NOI2022 D 类游记

· · 个人记录

省流:总分 100+(100+15+20)+(76+40+17)=368,Ag,非正式选手第 18 名,放到正式选手中可以排第 96 名。在 FJ 所有选手(正式与非正式)中排第 4 名。

NOIP2021 挂了 72 分,304\rightarrow 232。FJ 排名 5\rightarrow 17

FJ 由于疫情退出了联合省选。联合省选结束后,我大致 vp 了一下,发现自己至少能拿 300+,发挥的好的话有 400+。FJ 作为一个弱省,这个成绩即使拼上我稀烂的 NOIP 成绩,也能稳稳的进省队。

然而上面的都是理论。FJOI2022 大寄特寄,排名 40,连三倍队线都没到。这就是 FJOI 的反向区分。

然后 FJOI 的成绩由于众所周知的原因取消了,CCF 按照 NOIP 的成绩选了省队。我自然由于挂分掉出了省队。

我的努力,虽然微不足道,但也需要得到认可。但是在 FJ,我却遇到了如此冷遇。

既然没有人认可我的努力,那我就把它展示到世人眼前。或许在外省众多神仙眼中我很可笑,但在 FJ 人眼中,我就没有一点实力吗?!

\Large{\text{Day }-28\sim -23\ (7.25\sim 7.30)}

省队集训由于 FJOI 的风波取消了。于是我校与 XMSS 联合举办了民间的省队集训。

我从 7.19 开始就没怎么写代码了,但这似乎没有影响我的比赛状态。

\Large{\text{Day }-13\ (8.9)}

已经听说要提前 7 天出发了。傍晚时,我妈突然给我打电话,叫我去做核酸。然后说明天出发(提前 10 天)都有可能,因为再晚一点可能就由于疫情出不了省了。

然后真的就明天出发了。我还没怎么做好准备。

我觉得没有网络的话,看视频是个大问题。于是花了好久下载了《非自然死亡》和《命运石之门(意大利语版)》。然而酒店和学校都有 WIFI。

\Large{\text{Day }-12\sim -3\ (8.10\sim 8.19)}

一趟提前了 10 天的动车,一次人生中最漫长的远行。

独自外出十几天,我从未经历过,也从未设想过。

在万怡酒店安稳了脚跟。然后开摆。

不愧是 500 多块的酒店,连健身房都有。

住酒店期间,来这个酒店打模拟赛的 rsy 经常润到我们的房间,我们也经常和他一起吃饭。

\Large{\text{Day }-9\ (8.13)}

在酒店面到了 dead_X。他真的太会打音游了。

\Large{\text{Day }-2\ (8.20)}

出发去学校了。

已经多次听当地人谈到,这个昆山狄邦华曜学校是一所贵族学校。果然名不虚传,整个学校都过于高级了,完全吊打去年 NOI 的那个辣鸡学校。

我的宿舍编号是 D3-335。我的室友是 lmk、jbc、cxl。我去年就和 jbc 住同一个宿舍,感觉这个赛季以来他每一场比赛都特别牛逼,FJOI 的成绩能进 A 队,APIO 得分 200+,太强大了。

把行李放在宿舍后,我跟着 FJ 一众在校园里乱逛。大厅里可以用字母拼字,我们就拼了个 “Water AK FJOI”。草坪上有许多奇怪的器材,我们就一起玩转环环转圈圈。还被人拍下来发到兔群里了。

晚上的交流晚会,主要的感受是,OI 这圈子真是充满了活力(至少在全国来说是这样)。今年 NOI 竟然有主题曲,好耶。

说好的会把交流晚会的录像传到 B 站上的,我怎么找不到啊。

\Large{\text{Day }-1\ (8.21)}

上午领了胸牌与其他物资。发现 10 个头像徽章实在是太少了。

在我的带动下,lmk 开始玩 Celeste 了。

\Large{\text{Day }0\ (8.22)}

笔试日。

几天前就开始背了,上午又花了几十分钟巩固了一下。

我想在试机时写一写去年 Day1 的题。进场后发现试机题目是 NOIP2021,为什么不是去年 Day1/fn。

自己编了个去年 D1T1 的输入格式,开始写。我几十天都没怎么写代码,感觉手有点生了。大概二十分钟后写完了,开始无休止的调题。

还没调出来,笔试就开始了。一通乱做,\text{4 min} 后就交了卷。然后一直检查到结束。

根据套路,笔试结束后 \text{5 min} 可以看成绩,可是不一会儿那个网站就上不去了。甚至不让看笔试成绩是吧。

坐在我右边的老哥也问我是否能看到成绩。过了一会儿我看到了他的胸牌,发现他是 Qiuly/se/se/se,便当场膜拜了一番。

然后继续无休止的调题。我不想说我哪里写挂了,反正我调了 \text{1 h} 左右,太丢人了。然后试了试对拍。

这真的是我应该有的状态吗?这可是 NOI 啊,难道我要在考场上调三个小时的题?越想越觉得可怕,明天一定要认真写题。

从前天到学校开始我就一直在复习写过的题。今天为了赶进度,看得越来越粗略了,结果还是有好多东西没看,自闭了。

lmk Celeste 进度好快啊。

根据套路,晚上 9:00 睡觉。

\Large{\text{Day }1\ (8.23)}

进场前,Linshey 他们在猜测可能会考什么。我倒是觉得,你都没去考,怎么知道会考什么,猜有什么意义。

想 T1,一下子就会了,一看时间,$8:06$。我觉得这时候开始写代码有点早了,就去想 T2。感觉 T2 是个 DP of DP,但除此以外没什么思路。 于是开始写 T1。我一开始觉得我会了,实际上没想清楚,还以为序列的合并要写一个启发式合并。我本来用 `vector` 存序列,然后发现 `vector` 没有 `push_front` 这个函数。原来用一个链表就行了。怎么还要手写链表啊,不想写了,去想 T2 吧。 推出了 T2 的几个 trivial 的性质。然后错误地认为在放入 $k$ 个石子之前需要最小化 $1$ 的个数($a=[1,0,1]$,$k=1$ 就错了)。但即使按照这错误的结论想,我也觉得内层判定性的 DP 的状态数很大/yun,再套到外层 DP 上,完全无法接受。算了,继续写 T1 吧。 发现我 T1 的代码出现了奇怪的现象。具体地,一些代码段移到了别处,一些代码段直接没了。后来发现可能是鼠标的左键太灵敏了,导致手指仅仅是放在上面时,也可能会被判定为按下左键。在滚动滚轮的过程中,一些代码段被选中,有些被移动,有些被删除。 花了一段时间修了修 T1 的代码,然后把和 `vector` 启发式合并有关的代码都删掉,补上链表。还是不想手写链表,继续想 T2。 T2 仍然没有思路,于是回去把 T1 写完了。调了调过了所有样例,把代码扔在一旁。这时候是 $10:00$。 随后在 T2 和 T3 中反复横跳。T3 看了好几遍,每次耐着性子看一点,终于把题目看懂了。“距离 $u$ 不超过 $k$ 的点”,一眼觉得是点分树(讲评时发现狗屁不通)。然后发现只能保留两个点,合并树上的两个部分时还要有一个公共点,完全不知道怎么做。 发现 T2 的 “最小化 $1$ 的个数” 的结论是错的。现在好了,我只会 “记下 $i-4\sim i$ 这 $5$ 个值” 的判断性 DP 了。一点一点地,我口胡出的非暴力的部分分全都假掉了。 完了,这是什么震撼 Day1,这不是 Day2 难度吗? 有没有一种可能,大家都觉得很简单,就我啥都不会? 感觉今年药丸。去了趟厕所,在厕所里说了句 “怎么会这么难啊”(挺大声的)。 时间来到了 $11:00$,我还没怎么写暴力。感觉考试策略有点大问题,我不能花这么多时间思考,要写代码,拼暴力。觉得自己今年要寄了。 然后好像一直在写暴力。T3 只会 $\mathcal{O}(nd)$ 做法和链的情况。写的时候很慌,不知道脑子第一时间想输出的东西是不是对的。调试的时候一直 `Illegal MR/MC operation`,我甚至忘记可以输入 `./count <count#.in` 了,而是直接 `./count`,一出现非法操作程序就被终止了,输入中后面的那些行都被终端当做了指令。我惯用的 “按上下键找到之前输入过的指令” 变得效率低下(特大雾)。 我的 $\mathcal{O}(nd)$ 做法不是换根,链的部分我写了个分块(我怎么没想到猫树)。最后终于是写完了。 然后去搞基本全假掉的、现在不知道该写什么的 T2。现在我只会枚举所有可能的序列然后 check 了。我强行把每个数和 $5$ 取 $\min$,DP 转移时枚举有哪些以 $i$ 为右端点的操作,用 `map` 存有用的状态。 时间所剩无几,但这个暴力非常好写,一堆 `dfs` 堆砌,写完随便调一调就过了样例。 这时候好像是 $12:50$,开始不可省略的检查代码环节。T1 的大样例没有操作 $2$,但小样例有,而且这个代码看上去没什么问题,就扔掉了。T2 和 T3 都是刚写完的,胡乱瞄几眼就觉得没有问题。 最后几分钟我发现 T3 的代码出现了错位现象/jk,按了下 `Ctrl+Z`,就恢复了正常。天哪,这题差点爆零了。 我的得分上限是 $100+25+25=150$。不知道 T2 的暴力能不能过 $l=r$,$k=0$ 的点。 比赛结束后,我心如死灰。当学长 yc 问我考得怎么样时,我的回答是:“假如我今年进了省队,那这个名额真是浪费了。” 然而,问了几个同校的人,他们好像也都不怎么样。大家似乎都认为 T2 和 T3 不可做。那我还算正常发挥? 吃饭时 rsy 说,T1 询问的序列总长度可能会爆 `int`。完蛋,我没开 `long long`,要挂大分了。 但是我校没有一个人开了 `long long`。yc 发表重要讲话:要是出题人卡这个,出题人就 ***。 接下来的一段时间内,我每经过一片人群,总会有人在讨论 T1 的 `long long` 问题。看来这个问题有些普遍了,出题人确实不应该卡。 根据套路,Day1 之前与之后的状态应该是天上地下。昨天我还在疯狂复习,但是 Day1 一考完,我就直接开摆了。打开了在酒店看了一半的《非自然死亡》。~~cxl:这个看起来就很劲爆。~~ ~~查分之前我竟然一点也不紧张,比起去年进步了许多。~~ 去查分的路上,有 FJ 选手说他 T1 挂成了 $75$。完了,出题人素质怎么这么高,看来我也要挂大分了/ll。 打开 `FJ-015.pdf`,分数是 $100+15+20=135$。T1 没被卡掉!那位 $75$ 分的是不是别处写挂了! T3 的第 $2$ 个点 WA 了,测了一下发现 `init` 函数中调用 `MR/MC` 函数的次数 $C_1$ 超过了 $3\times 10^7$。感觉有些可惜,但稍微卡了卡,也无法通过。 T2 的第 $4\sim 5$ 个点段错误了,我一开始觉得正常,但我考场上魔改的符合这两个点的样例好像跑的挺快的来着。测了一发,发现第 $4$ 个点运行正常,输出也正确。然后发现没开 O2,又按照题面中给定的编译选项测了测,它段错误了。 打开代码一看,发现数组开小了。我忘了我的程序要访问到下标 $n+5$ 了,而 $n+5$ 最多是 $1005$,我的数组刚刚好开了 $1005$!即使多开 $1$ 位,也就过了! T2 挂的这 $10$ 分给了我两个教训:一个是**一定要按照给定的编译选项编译**,另一个是考试结束前几分钟匆匆忙忙的检查是没有用的。 问了一圈,发现 FJ 就 rsy 和 yc 比我高。 晚上听讲评,T2 完全没想到内层状态可以设计成 “至少延伸到 $i+1$ 的有 $j$ 个,至少延伸到 $i+2$ 的有 $j'$ 个”。我完全不认为 T2 是所谓 “中档题”。T3 只听懂了 $2\times 3=6$。 ~~lmk Celeste 怎么都打完所有 A 面了。~~ ~~什么,他在打第九章?怎么在作死,赶紧让他先打 B 面去。~~ 听完讲评后一直在看《非自然死亡》,看到十二点以后才睡。 躺在床上,发现 T3 的 `MR/MC` 函数只有两个参数都不是 $\epsilon$ 时才有意义,我好像调用了好多无意义的操作。但这已经过去了。 $\Large{\text{Day }1.5\ (8.24)}

上午是 “社会活动”,又说 “社会活动为校内活动”,那么 “校内活动” 就是在宿舍开摆。看完了《非自然死亡》,但我还是不会唱 Lemon。

下午的开幕式,我们宿舍集体去晚了,以为自己迟到了,实际上在放暖场视频。“我们一直在想,怎么让会员交钱。”

没认真听 dzd 的讲话,笑点都没听到。

无人机表演很震撼!这是由人现场操作的,还是提前设好了程序?

启动仪式时,领导们推动的那根杆,实际上是使内部金属粉泄出的开关。金属粉泄出,粘在了不知是磁铁还是什么的字上面。当那个装置被推走时,甚至有金属粉散落在地板上。

D3-335 宿舍出现了奇观:我的三个室友都开始玩 Celeste 了。

lmk 不愧是玩过空洞骑士的人,这技术进步的也太快了吧。

lmk 定下了目标:在 NOI 赛程期间通关 Celeste。

晚上说是要 9:00 睡,但咕到了 9:30 以后。

\Large{\text{Day }2\ (8.25)}

实在太丢人了。

咕咕咕。

\Large{\text{Day }3\ (8.26)}

早上 5:40 左右,被嘹亮的《强军战歌》吵醒了。cxl 怎么把闹钟铃声设成了这个。

我昨晚 12:50 睡的。cxl 睡得比我还晚,不知他为什么还精力充沛。

八点多上了动车。并没有写游记的心情,于是打开 Celeste 开始炼金。炼了四个多小时,我终于在下午一点多拿到了 4A 的金草莓。 然后打开了《命运石之门》,发现网络太差了,根本没法看。只好继续学 IOI2018 的那首主题曲 Euphoria,直到动车到站。 本来想回到家就开始写代码的,但是写这篇游记占去了我的所有时间。 听[《一沙一世界》](https://www.bilibili.com/video/BV1QS4y1W7Zp)上头了。 $\Large{\text{Day }6\ (8.29)}

勉强学会了 Euphoria。歌词的顺序是真的烦人。

\Large{\text{Day }8\ (8.31)}

听说校长在开学典礼上把我念成了铜牌。大错特错,我应该只有 Sn 牌。