时间安排
7.30-7.44
开题
T1像个树形背包
T2显然的杜教筛吧
T3后缀自动机
感觉都好难又都不是好难
7.44-8.04
写完T1 20分
8.08-8.26
写完T2暴力 1e7不可过
8.26-8.43
写完T3 20分
8.43-8.52
试图推T1的dp方程,但有点混乱
8.52-9.08
写完T3 40分,利用单调性二分
9.08-9.13
对拍测时完成
9.13-10.50
猛攻T3,写了个时间上的假做法,会被卡掉但我可以骗,实测在O2下随机数据
60% 0.22s
80% 2.23s
100% 4.36s
感觉尽管加了O2,受到vector常数影响依然很大
10.50-10.59
灵光一闪推出来了T2的线性筛,话说以前作业题里的这种线性筛我都不会,为什么考试就会了
杜教筛真的没办法,忘完了,弃(寄)
11.04
只剩下T1还有做的余地了
11.26
还是没写出什么东西,想了一下链的部分分,其实就是找两个交0并全的单调不下降的序列可这种dp貌似很简单,我却想不出来该怎么写,剩下时间就自闭了
赛后反思
T1的树形dp其实和我考场想法差不多的,但感觉最近休息太不好了,dp质量严重下降,明知道它是dp却完全不知道该怎么推,就只能乱写写暴力
链的情况我也能想出来是什么,但我不会实现就特别烦,尤其是在最后的时候,越写越慌乱,其实前面的速度还是要往上提的,最好就是能提前半个小时开始摆烂(指自我感觉没有什么思考空间了),感觉这场打得时间挺挤的,打暴力的时间要比之前好一点,但还有待提高,但松懈感还是浪费了很多时间下来,不然T1的20分应该是能拿到的,如果精神状态好一点,应该还能在dp拿点分吧
T2其实我确实以为是杜教筛的,毕竟积性函数求和的方法就是杜教筛(我今天才知道是dyh引进的),但其实并不是,而只是一个极为复杂的数论分块,订题过程中学到了好多优化这种常数的方法,尤其是要在取模上想点办法优化常数,效率会大相径庭。
考场上第一次自己推出了线性筛吧,毕竟之前的作业题都是直接看的博客代码,挺有成就感的还
但杜教筛这个东西感觉现在让我复习也意义不太大,因为我也推不出来,考试也总不至于就出个莫比乌斯函数和欧拉函数求和吧,莫比乌斯反演的常见套路记得还是挺清楚的,推式子这方面要熟练许多了
SAM以及广义SAM我是理解原理只是不会背板子吧,但一些应用的模型不太熟练,我只是懂构造原理,使用上的原理没有特别清晰,(网络流我既不理解也不会背),考场上却是没往这方面想,搞了个40的n^2log的字符串Hash+二分,想了一下用一种势能均摊的方法,预处理出某些串在哪里出现过(这些串的长度极小),由于在不特殊构造的情况下,极大概率从某个位置作为左端点,向右10格得到的串是唯一出现的,那么根据这个性质,二分的复杂度就又可以省下来了,且我可以拿vector存下来每个前缀出现的位置,这样就只需要找前缀相同的位置进行完整的比较,而不需要枚举每一个位置进行比较,我认为总复杂度极低,经过测时也能过60pts,我也对拍了但就是挂了,就很自闭的没有办法,也许对拍时间有点短吧,或者因为没有构造特殊的情况,导致40->10
日后安排
1.外部环境很好了,但要继续加强对自己紧张感的约束
2.背板子背板子背板子
3.对拍时构造特殊数据