<更新提示>
<第一次更新>
<正文>
多校联合测试
一场常规省选难度的模拟赛,三题的标签分别是“结论题”,“多项式”,”费用流“。
第一题看似是数位题,但是卡空间,并且删除操作难以用(mathrm{Trie})等数据结构维护,让人匪夷所思。
正解是一个结论,值域区间最大的(mathrm{and})和必然诞生在前(p)大的数当中,(p)与值域的一个(log)同阶。证明可以考虑反证法,分成(mathrm{ans})最高位以上的位和最高位以下的位两部分考虑即可。考试的时候连暴力都没写出来,后来听说暴力是用(mathrm{Trie})树贪心。
第二题很明显的一个多项式题,(40)分直接写一个(NTT)卷一下积即可。正解是用第二类斯特林数拆自然数的幂,然后整理成分治(mathrm{FFT})的形式,再做卷积。当权值为组合数的时候有一个组合结论没有看懂,所以没有订正。
第三题看数据范围就可以猜出是费用流的题目。建图方式就是保留原树结构,然后源点网所有路径起点连一条边,所有路径终点往汇点连一条边,这样流表示选择一条路径。然后再从起点向终点连一条边,表示不选这条路径。这样就可以跑费用流了,最大流量就表示每条路径都做了一种选择。处理费用只需差分一下费用函数即可,由于导数单增可以保证费用也是单增的,流经时会优先选择费用小的。
近期规划
前一段时间在写网络流和字符串,寒假的时候听的(mathrm{zhengruioi})的网课,专题是分治分块,数据结构,字符串,数论函数。所以暑假前就准备先搞这些内容吧。应该是从字符串先开始,字符串的大体内容如下,带(^*)的项目是不准备写题的:
-
(1.) (mathrm{Trie})树
-
(2.) 字符串(mathrm{Hash})
-
(3.) (mathrm{KMP})
-
(4.) (mathrm{AC})自动机
-
(^*5.) (mathrm{Ex-KMP})
-
(^*6.) 后缀数组
-
(7.) 后缀自动机
-
(^*8.) (mathrm{manacher})
-
(9.) 回文自动机
其中(mathrm{Trie})和(mathrm{Hash})简单复习一下就好了,(mathrm{KMP})和(mathrm{AC})自动机要好好写题总结一下,然后就是后缀自动机和回文自动机,就有很多题可以写,需要总结原理和套路。
<后记>