单题训练总结
NOI2026
P17140 [NOI 2026] 线段
不对啊,按道理讲是个弱智题啊,怎么赛时3h+赛后1h还是不会啊
嗯?怎么感觉题解跟我是一个做法啊?为啥我多个n啊?为啥啊?
哦我懂了,怎么会有人枚举当前考虑了前多少个线段啊……
确实是弱智题,为什么不会呢?感觉考场上不大冷静是不是
会了kn^2,获得92,卡常无果。
略微调整了一下状态,加了个去重,变成knm,过了。
P17144 [NOI 2026] 木棉
感觉是整场NOI除了segment最简单的一个题,赛后去旅游的时候甚至梦到正解了,赛时就干瞪那个nq暴力然后毫无思路,不知道在干啥
哦梦到的正解有点问题。
补题的时候隔的时间有点久,直接写自己记得的思路,结果第一步记错了,从找弹出位置记成了找在序列里的最后一次出现位置,寄。
思路修正后写了个log^3扫描线树套树轻松过掉72,还能更高但是懒得卡了。
本来想着可以直接套树套树二分干到正解嘞,结果写出来发现我需要在两维上同时二分,树套树套不上,整体二分也套不上……
等等还有救!发现第一维的mid可以容斥掉,把两维换一下再往线段树二分的估价函数里加个前缀和加个容斥,计算估价函数复杂度是log,不影响总复杂度,过了。
P17145 [NOI 2026] 彩虹树
赛时读错题了,最生无可恋的一集。
做的过程中感觉无比高妙,过了之后觉得是大典,题解就知道唬人。
才发现判定性问题赛时想差不多了,不等关系找对了没写出来贪心,也可能我读对了题就能写出来?不好说。
其实整个题的优化就是把不用的维度直接删掉,是个好常用好显然的trick。
哎怎么越说越觉得这个题没有技术含量了,怪不得投UNR D1T2因为太简单叫拒了。
P17143 [NOI 2026] 中位数
我收回木棉是NOI第二简单题的言论。
我收回线段是NOI最简单题的言论。
太水了,考场上应该是想到正解了,然后写了一坨不知道什么玩意写挂了以为自己假了……
又好想又好写,除了代码长一点没有任何难点,segment还有点被背刺的可能性,这个题连可能性都没有,赛场上没过就是纯菜。
P17141 [NOI 2026] 传送
刚看完震波,这个题把我乐到了,我们认为我之前就是不会点分树。
然后我收回之前对NOI题目难度评价的所有言论,两天T1T2都是弱智,D2T3对于那个位置来讲是弱智,一个题没切的我也是弱智。
化完式子直接套震波获得75,观察到相邻两个位置答案至多差一,对一个位置做完直接换根,过了。
P17142 [NOI 2026] 布丁
根本不是题。
感觉考场上做到这个题的时候整个人已经魔了,捯饬半天干出来的分还没有输出1~N多。
随机化随便过,写的是暴力建决策树,决定每个节点询问方案的方式是试一遍用过的决策,随机一万次,再在现有最优解的情况下调整一万次,最后来一段变态调参,整个做法类似爬山。
构造做法有点难评,整个做法学下来感觉就是,先得到最基本的那个思路,即尽可能缩小最后一次询问的集合大小,然后进行一系列比随机化算法还变态的调参……
着实无法从构造做法中获得启发,感觉前半段该不会还是不会,后半段就是调参调参再调参。
杂题
P3216 [HNOI2011] 数学作业
矩乘板子,少取个模
好吧其实也没那么板子,就是把他要你求的那个数转化为线性递推式然后用矩乘加速……好吧还是板子。
CF1438D Powerful Ksenia
不会2200/哭
构造次数不带log的限制但是偏要拆位导致的
感觉有点像P12417的那个trick
P6569 [NOI Online #3 提高组] 魔法值
大水,一发过。
本质是矩乘统计路径数,矩乘嫌慢就写bitset。
P4159 [SCOI2009] 迷路
大水,拆个点然后矩阵乘法数路径。
CF932F Escape Through Leaf
李超树合并优化DP板子,一发过。
P4069 [SDOI2016] 游戏
差点没反应过来李超树可以区修区查(流汗
写挂了一些,在算贡献的时候直接把节点上记录的线段当成全局的了。
CF2267G New LRT
好题,真的好题。
类似ST表地统计前2^i位的和来优化转移,平时这种事情会直接交给线段树,但是这个题的转移状态位置是不连续的,所以可以倍增处理二进制位。
然后就是神之拆贡献,统计每条边用了几遍就可以把边权和之和转化为路径边数之和。
还不卡常!真的好题!
P1783 海滩防御
水但挺好的。
把上下不联通转化成左右走障碍物可达。
二分的时候疏忽了,没考虑到会有答案会有.5,应该二分答案两倍的。
P4113 采花
扫描线,扫到一个数的时候把从后数第二个加进去就行了。
P9170 [省选联考 2023] 填数游戏
5.5K,2h想加写掉,快快?!
做的过于顺利了,虽然按道理讲应该很难但是没啥好说的。
实现比半年前漂亮多了,模拟功底++
P10789 [NOI2024] 登山
独自干出来45然后整个人晕掉了,后来捋明白感觉也没那么难。
会到l_i=r_i,后面的部分把贡献差分一下就好。右端点不是很好算,但是发现v_{i,j}<r_j之后贡献就和询问本身没关系了,所以把这个贡献再拆掉,差分到每一个后缀最大值点上。因为后缀最大值关系是唯一的所以可以依照关系把树建出来做树上差分。写的很快。
CF845G Shortest Path Problem?
最大XOR路径板子。
CF1100F Ivan and Burgers
区间线性基板子……不对!
线段树直接维护区间线性基多个log,T了。
改成维护前缀线性基并让线性基里每个元素的时间尽可能大。

浙公网安备 33010602011771号