一类支持修改;区间询问的 dp
不带修:
CF1661E:题解
具体就是将所有询问离线下来,用一个类似于线段树的结构维护,将每个询问挂到正好包含此询问且 midmidmid 在询问中间的节点上
这种方法代码非常简单,时间复杂度是 O(nlogn+q×t)O(n\log{n}+q\times t)O(nlogn+q×t),ttt 表示合并信息的时间复杂度
带修:
CF1609E:
非常基础,对于原串所有子序列都没有出现过给定字符串这样的问题直接套广义矩乘就好了
CF573D:题解
很有意思,贪心转化成第 iii 个位置只能选 [i−2,i+2][i-2,i+2][i−2,i+2] 之间的物品就可以动态 dp 了。确定一个题是动态 dp 的时候就可以直接往这种方面想
lg4719:
树上的问题
直接考虑树剖,然后每一个重链维护上面的矩阵即可
注意树剖的矩阵乘法是从根到叶子节点的,乘的时候需要反过来
这道题的修改非常有意思
上一篇:亚洲杯-乌兹别克2-1淘汰泰国挺进八强 下一轮将对阵卡塔尔 亚洲杯赛程印度乌兹别克 亚洲杯泰国对乌兹别克
下一篇:最后15分钟狂攻收成效!韩国绝平进加时,克林斯曼疯狂庆祝 克林斯曼战术照亮韩足赢球之路 克林斯曼执教韩国六场比赛