整体总结:
0.打了这么多场终于干上rk1了
1.有时候在想不到更多的分的时候可以尝试对暴力进行一些剪枝 例如今天T4我的暴力在经过剪枝后可以把60分的大样例跑过
2.在算出来复杂度大约是稳定的2e8时不用着急卡常 这个是可以过的 特别是小常数的dp 一般在5e8的情况下才考虑卡常
3.字符串部分相对薄弱 今天的T4本来可以将我的DP优化到n立方的 但是我自己对这种处理的方法不太熟悉 所以只写了n四方
4.今天给了一个半小时打暴力 时间有点多了 但这样就有一些灵活的时间 可以去优化代码 所以暴力给1小时到一个半小时之间是可以的
T1
很简单 观察到x的绝对值的总和很小 这样最小值最大的问题可以考虑二分 考虑怎么check 我们设dp_i表示当前选出的x的总和大于等于i-1e5的情况下选出的y总和的最大值 直接按恰好来做 然后取一个后缀max即可
T2
全场最难的题 题目给了一个神秘结论 这个结论引导我们往网格上想 然后对问题进行转化 使得问题成为一个可以使用结论的问题
T3
看到这种关于异或的问题 可以考虑trie树 我们可以在树上设一个dp 然后再去维护这个dp 暴力一点可以莫队做 要通过需要分块对复杂度进行平衡或者小常数的树状数组维护
T4
我们考虑设出一个n四方的DP 直接暴力区间DP
如何优化 直接n^2log预处理出一段字串是否出现在一段区间中 这样可以优化到三方 但我们发现这个做法很没有前途
考虑直接优化转移 我们可以预处理出最多可以转移到哪 然后直接像bfs一样转移就行了