NOIP 2023 游记
规定比赛日为 Day 1,比赛前一天为 Day -1(Day 0 呢???)。
强推 HARDCORE TANO*C 的 20 周年专。
Day -7
由于明天要打 CCPC,所以就留在学校不回去了。
晚上教练给我们点了麦当劳,之后就自然而然地演变成了集体打摆(就当作 CSP 前没能腐败的补偿吧)。
先打了会块,然后和高一学弟们联机 MC,几乎全是下饭操作。在猪灵堡垒的时候被疣猪兽和蛮兵灭了一遍又一遍,找了半天都找不到猪灵交易,等找到更多猪灵的时候发现金锭没了。
好不容易进了末地,结果是个法国龙,我从头到尾就没见它下来过一次。无奈之下在中间搭了个高塔,然后就看到 Ender32k 无限 tp 我后跳下去自杀式砍龙,还有 Raphtaria_ 开创造模式起飞追着龙砍。之后这个高塔还变成了艺术品。
不过最后还是靠弓箭抢到了龙,赢!
难得在学校有手机,所以睡得比较晚。
Day -6
6:30 起床,6:40 上车出发。
小巴真的好容易晕车,熬了 2 个小时终于下车了。
老师好像没有跟我们说开始时间,于是到场的时候所有人都直奔厕所。等出来的时候我已经听到志愿者在大喊进场了,才发现是 9 点开始,于是拿上胸牌之后匆匆进去了。
然后抽象的来了:比赛开始的时候我们学校每队只有一个人到场,其他人全都在厕所没出来!
等半天等不到 wcj 和 wzy,于是先把前六题看了。还没有队过题。
15 min 的时候 wcj 来了。18 min 的时候 wzy 来了。
队名:常量整数无穷等于十异或九,\(\text{const int inf = 10^9}\)。
开场我先把 A 写了,然后 wcj 和 wzy 各写了个 F 和 L。
之后 wzy 会了 I,我会了 G,wcj 会了 K,穿插着写完了。罚时爆炸。
然后我和 wzy 把 D 弄出来了,又和 wcj 把 E 弄出来了,两道诈骗题。现在排名还很好看。
之后吃饭吃了 1h,wzy 会了 J,让我来写,调的时间有点久。最后 wzy 和 wcj 会了 M,时间不够没调出来。喜提 rk8。
呜呜呜被铁一和省实爆踩了。
晚上继续晕车,回去啥都不想干了。
Day -5
今天秋游!评价是没啥好玩的。
突然发现明天我出的模拟赛进度为 0%,花一个晚上搞定了。我是 ddl 战神!
Day -4
自己组的模拟赛,于是去看了下胡策,怎么签到题放 T3。
榜挺好看的,还挺有区分度。
Day -3
wcj 组的模拟赛,怎么 T4 是大模拟。
榜挺好看的,还挺有区分度。
Day -2
wzy 组的信心赛,顺便当作试机。
AK 了。榜挺好看的,还挺有区分度。
Day -1
改了一下前几年的 NOIP 原题,还剩个移球游戏懒得改。
晚上愉快飞盘,开了一把短的狼人杀。由于频繁断网于是偷偷腐了一下。
大家很早就走了,整个机房就剩下我一个人。真的是最后一年 NOIP 了呢,每每想起这件事就会有无限感慨。
坐在电脑前翻看我这几年以来的代码,每场模拟赛,每次杂题选讲,联想起过去在机房里发生的所有事。
想起每一场模拟赛,我是如何想到各种奇妙的做法,又或者因为一道题而破防。
想起每一次在机房,我们常常因为一道题的不同观点而争论不休,常常共同钻研某道看不懂题解的题,每个人在希沃白板前展现自己的才华,或者惊叹于某人的思维独特之处,又或者因共同做出某道题而感到兴奋。
想起了那些曾与我们同行的学长们,wlx,lh,lmh,ylw,等等。想起了那些曾在机房经常出现的身影,ztc,lgj,ybx,lgx,zzr,等等。
想起了以往每场正式比赛的经过,有很多惊喜,也有很多遗憾。想起了一起去外地集训/比赛时,那些自由快乐玩耍的时光。
始终不愿意接受已经高二的事实。快乐的时光总是短暂的。现在能做的,可能也只是将过去的回忆好好保存下来吧。
为什么我总是这么伤感啊,明明还有半年继续书写自己的 OI 故事。
Day 1
昨晚回宿舍比较晚,因为一个人对电脑想了很多。不知道几点睡的。
突然想起来板子一个没看,于是抓紧时间看了看 SAM,SA,LCT 和四元环计数。其实 NOIP 还是挺重要的。
进考场了。不让带食物差评。
- 8:27
经典提前 3 分钟开考,解压密码:T#YMS@4
/ Y@T2L32#
。
不知道为啥过了好久才解压成功,浪费了好多时间。
你先别急,让我先把 my_std 打了。
- 8:42
先看每道题的时空限制,挺正常的。
然后看 T1,看错了一次题面,发现是签子。
很快打完了,不过有一说一我不太信任这个大样例,先放着后面再拍吧。
- 8:51
接着开 T2,想了一下发现也是签子,CCF 你有分是真送啊。
很快打完了,发现大样例都有特殊性质,不太敢信,先放着后面再拍吧。
- 9:10
开 T3,有点神秘,在草稿纸上乱搞一下发现只会 \(\mathcal O(nm)\) 状物。
然后继续思考,发现大概是 \(y\) 序列的每个数对应 \(x\) 序列的一段区间,然后要求有偏序关系。
尝试推性质,啥都推不出来,看部分分的特殊性质也丝毫没有头绪,于是决定 10:00 准时跳题。
- 10:00
真跳了,毕竟真没啥思路。
扫了一眼 T4,很有历年 NOIP 标准 T4 DS 的样子。仔细读完题面,标准的 dp,于是尝试把转移写出来。
一开始状态设错了,设成 \(f_i\) 表示考虑到第 \(i\) 个区间的答案,于是转移越推越复杂,但好歹能做。
准备开写的时候一看输入格式:怎么还有个 \(k\)?完了那好像不可做了。
然后突然发现自己蠢到了,完全可以设 \(f_i\) 表示考虑到第 \(i\) 个点的答案啊。这样就是线段树优化 dp 板子了。
看 \(n\) 数据范围,\(10^9\) 有点吓人,不过离散化一下就行了。火速开冲,就喜欢打这种不用脑子的工业代码。
打的时候注意了一下周围好像没人像我一样敲代码的,估计是还没开始写 T4。
其实打完的时候是很慌的,因为感觉 NOIP T4 不可能放这种简单东西。不过它竟然过大样例了,只不过被卡常了,大部分时间都在输入上面。
写了个暴力拍,然后放 Linux 下测极限数据,感觉不会 T,就不管了。这时候周围敲代码的声音明显变多了,估计很多人发现 T4 水了。
- 10:50
还有 2h,我拿什么输!(然后就后悔说这话了)
怎么水要被我喝完了,要省着点喝。
想了一会没啥思路,感觉要寄,保险起见还是先把 \(\mathcal O(nmq)\) 的暴力写了。然后发现这个暴力形式非常简单,可以转成一个 \(n\times m\) 的网格图,其中 \(x_i\geq y_j\) 的格子 \((i,j)\) 是障碍(默认 \(x_1<y_1\)),问 \((1,1)\) 能否往右下走走到 \((n,m)\)。
不难发现每一行有障碍的格子集合是包含关系,然后尝试推更多性质,又不会了。。。
又想了一段时间,时间不多了,只能赌一把了。大胆猜测满足基本条件后一定有解,然后拍挂了。
画出反例后发现这个无解情况相当于某个右下角被障碍隔离了,于是打了个补丁,又拍挂了。
画出反例后发现这个无解情况相当于某个左上角被障碍隔离了,于是又打了个补丁,又拍挂了。
画出反例后发现这个无解情况相当于……诶我不是判了吗?哦好吧我写挂了。
继续拍,拍上了。测大样例,都过了???
反正没多少时间了,赌一把吧,就当这个结论是对的。
- 12:30
此时我已经非常紧张了,我需要在剩下时间内冲出线性做法,还可能是假的或者被卡常。
写出判断条件,两种情况是类似的,不过好像要做到线性没那么简单。
在草稿纸写一写,好像随便枚举个东西然后根据单调性维护指针就行了,不过要写四遍类似但又不相同的东西,感觉很容易复制错。
写代码的时候整个人是绷紧的,因为我还留着 T1 T2 没测大样例+对拍。然后监考老师还每隔几分钟喊一句“距离考试结束还有 XX 分钟,请尽快检查代码”给压力。
写完了,拍上了,大样例过了,跑得飞快。不放心造了几组极限数据+不停对拍+眼瞪代码易错点,然后放到 Linux 下测,都没问题。
- 12:47
还剩点时间,造了 T1 T2 的 gen,然后测极限数据。暴力是没时间写的了,也没时间放 Linux 下测了。
中间留意了一下周围人的动静,基本没键盘声了,wcj 好像还在打?
不停地检查四道题的代码,检查了若干遍文操。空间没时间测了,眼瞪了一下感觉没啥可爆的。
最后一分钟想起来忘记建以自己姓名为名字的文本文档了,光速建了一个然后最后也没写完。不过反正就算没写也没事。
刚结束右边的人就问我 T3 怎么做。其实我更好奇右边的人是怎么认识我的(upd:现在知道了)。
一边出考场一边简述了 T3 做法,之后找到了 wcj 和 wzy,都发现了 T4 是神必题。
不过好像 wcj 375,wzy 335,都没做出 T3?有点可惜。
去厕所蹲到了 zsh,发现他 AK 了。感觉自己的 AK 速度有点慢了,应该加训。
问了 \(\mathcal O(1)\) 个学弟,分数普遍偏高,zlt AK 了。
这个赛季真的很奇怪,已经考完的 CSP 和 NOIP 相比以前都太简单了,这导致两场考试都没有区分度。
不过如果真的阿克了,那也算是不给 NOIP 留遗憾了吧。
Day ???
回归 whk 了。
最后一次 NOIP 怎么又忘写迷惑行为了,不过我猜不会有人总结。