NOI2026 游记

省流:只过了两天 t1,\(5+100+(100+95+76)+(100+88+8)=572\),rk45。

7.6

联考,5h 做 t1,平方暴力都不会,真正意义上的垫底了。。

7.8

飞机怎么还晚了 1h 起飞,半夜到青岛。

7.9

模拟赛。过程速通一下,大概 0.5h 过了 t1,想了一下 t2 感觉会了,写了一下感觉有点没搞清楚,重新编了一下过了。2.5h 做 t3,1h 写了 44,罚坐了 1.5h。

最后好像排名不上不下,所有人的分都挺接近。

7.10

模拟赛。想了想 t1 感觉会了,做了一下 t2 好像不会,先把 t1 写了。然后做了很久 t2,以为会了然后发现样例就是 hack,想了想感觉不好修,拼暴力五方多冲了 15 分。然后 t3 写了一点暴力,想了想不太会。

最后好像 t2 就是把上下左右四个矩形都找出来,我好像只拿出来左右所以就不太对……但是暴力多了 15 所以分还不太难看。

7.11

UNR Day1。开场做了做 t1,1h 过了。然后想 t2,发现可以贪心调整,然后就有答案是有一个分界,左边尽量少选,右边尽量多选。然后好像直接对方案计数就好了?

然后推了推开始写,写完的时候只剩 1.5h 了,调了半天系数,最后还只过了 \(a=0\)。。。rank 208 垫底了。。。

感觉这场 t2 调不出来还是太抽象了啊,这种大 dp 题写和调都要冷静一点啊!!!

下午调了调 t2,改对交上去直接就有 75 了,加了个优化过了。发现 t2 过了 50 个人。。

7.12

UNR Day2。仍然 1h 过 t1,然后做 t2,先想了一个合并子树的做法,好像是 \(O(3^nn^4)\) 的,写完过了 \(n\le 16\)。然后看了一眼 t3 感觉很难做啊,先写了 20 暴力。

这时才过去 2h 多一点,一个 t2 难道还能做不出来?又编了一下发现可以 \(O(2^nn^3)\),写了一下还是只能过 \(n\le 16\)……卡了一下常,全改成 ull 然后延迟取模卡到了 72,然后其实状态数也可以除二,然后就有 82 了。

这时还剩 1.5h,测了一下这个东西本地 \(n=20\) 只要 2s,但是不太会卡常啊。想了很久以为会了 \(2^nn^2\),写了一下 \(n=20\) 要 4s,而且复杂度好像还分析错了。。然后罚坐到结束。

感觉打完的时候有点自闭,因为我的做法看起来都非常简单,感觉大家应该都会这个分,但是最后 day2 出榜发现苟到了 rk10?但是 d1 太低了,总分 rk49,好像 d1 150 就有 UNR Au 了。不过与其遗憾,不如想想为什么 4h 做不出来 d1t2 呢?

7.13

好像是模拟赛?t1 不会做,\(40+0+0\) 垫底了。不过好像心态也没怎么受影响。

7.14

counting 讲课,感觉好像听懂了挺多,很厉害啊!

7.15

模拟。看题 t2 不是我们 wtf25a 吗,但是我好像忘了怎么做啊?先写了 t1,做了一下 t2 好像又不会了,写了 ~30 暴力先看 t3。慢速拼了 36 分再做 t2,想了很久才发现最小化字典序可以按位确定,我之前在梦游吗???中间去拼了 t3 的 4 分,然后写 t2,写写调调分数 44 -> 56 -> 68。结束时感觉暴力拼满了啊,应该排名不低吧?结果 t2 过了一万个人,又垫底了。。。

7.16

模拟。开场做 t1,这不是我们变种 manacher 吗?直接做一下……怎么做拓展一位来着?想了很久都不会啊,1.5h 时感觉完全想不出来了,写了个带 log 做法,直接过了。

然后开 t2,猜了一下前面该怎么填,好像直接确定总是有问题的,知道了整个的 chkmax 的情况后就可以填了。剩下的部分猜了许许多多乱搞贪心,好像都过不了样例,最后交了一个 36p 的代码。

然后好像只有 30min 开 t3 了,优势不在我!看了一下写一个裸暴力 10 分。感觉 \(K=1\) 这个挺好做啊,这个应该造不出什么强的数据,直接随过了这个包。然后发现矩阵为空只有最后一个点挂了,尝试改随机方式,不过都过不掉。

好像最后排进了第一页,怎么 t2 又搬 wtf?为什么全世界过五个人这里过了十几个?还有人类吗???

这个 t1 原来是你只要判一下左右距离,这么简单吗……但感觉很难想啊!!

7.17

greedy 讲课。感觉许多题比较简单,但是有些不会做 /youl

7.18 (报到日)

noi 还是来了啊……CJ 四个高一一间。

晚上随便做了点题。

7.19

开幕式,dzd 讲话一如既往的逆天。试机赛怎么不是 noip 了,我想做 t3 /kel,还是做了一下 wc t1,半个小时不到拿了 96,笔试完改改就 100 了。想当时我怎么这个题 84 都写了 2h 呢?

晚上本来想学一下 AGC 的,结果根本学不会。复习了一下就睡觉了。

7.20 (Day 1)

前一天晚上睡得其实不太好,半夜醒来一次,然后躺了很久看时间怎么是三点半??到了四点多才睡着……不过进场还算清醒?

开题,怎么没有密码,全场都举了红牌。原来是工作人员还在一个个发。

先看题,t1 区间图,难道和弦图有关系?t2 不懂,t3 怎么是交互??

做了做 t1,首先条件就是最大覆盖不超过两次。然后你直接 dp 是不是 \(k\) 乘三方?打算先写一个试试水,结果好像直接挂了,原来还有联通的限制。重新做了一下,好像去掉被包含的之后可以顺着 dp,然后应该就对了?写一发改改过了,这时只有 0.5h。

然后做 t2。因为你随机就和起点没关系了,所以肯定是保留一个连通块。其实是按照 \(y\) 距离升序选。然后你按点选不太好做,每次选一层比较好,而且似乎还有凸性。先写了一个暴力试了一下,拿了 40。此时 1h。

然后是不是凸二分然后点分树就是 2log?10min 速通点分树,结果只多了 \(n\le 1000\) 的分。测了一下大样例,怎么要 11s。。卡卡常,看链的部分分好像其实答案是 \(O(\sqrt n)\) 的,所以你改二分上界就常数减半了。然后卡了一堆常到 80。感觉可以换题了,此时 2h。

看 t3,感觉很不可做啊。想了一下怎么 check 一个大质数,一个想法是你问一个序列,相邻元素 \(\gcd\) 不同,然后就可以二分了。打算写一个看看,但是怎么保证 \(\gcd\) 不同啊?想了想能不能保留比较小的数状压,发现这个完全没法写,而且也未必能过 sub2。

重新做了做感觉比较优的是你把候选集合尽量分散,然后每次问的信息可能就多一点。但是这个分散也不好定义,难道这是一个乱搞题?先写了一个 dp,发现选 \(40\) 个数第一步都非常不均匀,乱搞约束一点东西也没啥用。想了想改成了退火,这个好像在 \(20\) 个数就能退出最大分叉 \(\le 200\) 的解。感觉很有道理啊!于是写了一下,大概就是每次询问退火出一个解。写完跑了一下 sub2,用了十几秒,好像答案挺优?

然后卡了一下常,因为绝大多数时候候选的数很少,所以退火的 \(\Delta\) 也可以小一点。自信开到 \(0.9\),居然也能搞出还行的解 /jy,加了个 bitset,卡了卡常把 sub3 搞到 ~8s,大概有 60 多分。这时候大概还有一个多小时,算了一下分好像有 240 多了?

感觉 t3 完全在乱写,于是在做 t2 和卡 t3 间选择了卡 t3。然后加了一点小优化,好像这个分数和随机种子强相关,好像能差出 ~5 分。好像 114514 和 1145141 两个种子挺优的(?调了一下参拿到了 77 分。

这时还有 1h,于是再回来看 t2。原来答案只和 \(y\) 有关,那我写 \(O(q\log^2n)\) 不是全错了,改成 \(O(n\log^2n)\) 后面四个点就不是 (Killed) 而是显示真实时间了。又对着 2log 的部分卡了卡常,但是没卡明白,最后一个大样例 3.1s 但是 selfeval 那四个点还是随机通过。最后五分钟测出来 100+95+77,同时用完了所有的 selfeval 次数。但是后面那几个点和时限都只有几十毫秒的波动,感觉要抽奖了。

出场感觉还行,问了一下 Calvin 293,说 t3 写了好几个策略,太牛了啊。

查分前立的 flag 是如果 t2 <= 90 就申诉,否则就不管了。最后得分是 \(100+95+76\),t2 有一个点多了 0.02 秒,但是另一个用了 3.496s……那还是不申诉了。t3 因为分数取整的一些原因少了一分,感觉问题不大。感觉今天应该能上队线?但是大家都好厉害,d2 还是要打好一点。

下午听讲题,t2 原来相邻差 \(O(1)\) 就能做 1log 了,怎么还有 defense。好像把建树优化一下,可能用 basic_string 就能过,毕竟只有五分那算了。t3 原来真是划分区间,但是 sol 太厉害了啊,会不了一点。听讲题的时候发现 t3 把退火记忆化一下好像就可以快很多。似乎 t2t3 的时限都是开大之后的结果,但是我两个都是擦着时限过了,感觉运气挺好!

7.21

社会活动,感觉一直在走路,回学校感觉困得不行。

做了几道 CF,怎么被 省选/NOI− 花式吊打了。不过 day1 感觉分不是很低,心态还是比较好。

7.22 (Day 2)

好像晚上又睡得不好,疑似只睡着了 5h。

开题,先把题都看了一遍。t1 感觉应该二分之后随便做做。t2 什么东西?prufer 序怎么还能区间询问了?t3 counting,感觉算的东西也很奇怪。

然后先做 t1,这个二分之后就是要算正段不少于负段的数量。但是好像你每个正数单独划一段就已经很优了,只比负段少 \(1\)。感觉一下,好像只有不多的 case 要判,但是应该和 \(k\) 奇偶性有关?这时候才看到部分分表,感觉全对了啊。写了一点东西发现只能过偶数,对奇数好像还有一车 case 要判。然后想了一下能不能 dp,但好像你直接最大化段数也是不对的。然后还是去一个个分讨了,对着拍发现写挂了一车地方,中间一度以为要复刻 sale 传奇了,最后还是调出来一个平方做法,然后把每个平方都改成线性,搞了很久交上去过了。这时已经 1h40min,感觉有点寄。

然后做 t2。感觉要用 prufer 的性质,但是这有什么性质啊?想了很久能不能在前面或者后面加数,但是好像都完全没法维护。然后尝试改写成 mex 状物,但好像还是没法维护啊?这时候只有 2h 了,得分还是 \(100+20\),感觉有点不妙。

然后重新思考了一下,这个可以转化成维护堆,每次 pop 一个数。感觉很有道理啊,转 01 应该是匹配问题。那就可以二分 \(x\) 是不是在前 \(p\) 个被删,然后就是一个判完美匹配了,先写了一个 Hall 暴力,感觉很能优化啊。编了一下好像你只要判一边是全集,那就是动态二维数点了。直接树套树是 3log,写了一个 BIT 套 BIT,大概在 12:00 写完了,交了一发只有 24。然后发现二分可以改成 BIT 上二分,就少一个 log。写了一下,对着样例改了很久,12:20 左右获得了 68 分。

好像又是卡常环节,但是我 t3 还没写代码,速通了一个 \(n\le 8\) 暴力,对着样例 2 疑惑了一下为什么不对,结果读入的 \(f\) 怎么还有 0 的父亲,无语了。还有 20min 卡 t2,把哈希表换成 cc_hash_table 就能跑起来了,但是 \(x,y\) 比较小好像非常慢,特判了一下。测了一发怎么 88,数据随机没过最后没性质的过了。但是 \(a<1000\) 跑得很慢,最慢能到 1.95s,尝试特判但是写不对,还是相信一下数据吧。

出场感觉有点寄啊,t2 又要抽奖,分在非常大的区间浮动。问了一下 t3 好像没什么很高的?一开始还以为 t3 大家都是 8 分,结果后面听到有 260+ 甚至 ak 的。自闭了。

查分前的等待总是非常煎熬,等开门的时候,chifan 告诉我说,t2 只要判一次就好了,因为先删的一定是子节点,感觉很有道理的样子。最后查分 t2 88 没挂,最慢点 1.976s,有点极限。算了一下总分 572,已经比去年线高了,感觉今年题应该比去年难吧?

好像这个分在队线附近,各地方的估计线都不一样,最后队线停留在 560 分。

晚上群里有人发了总榜,看了一下我 d1 rk40,d2 rk80,总排 rk45,感觉 noi 的强度比我想象中要高很多啊。但是为什么 d1 队线 260,d2 队线 208,但是总队线 560,这对吗。

posted @ 2026-07-10 23:19  CJzdc  阅读(82)  评论(3)    收藏  举报