数据结构优化动态规划

类似于单调队列优化,根据转移方程的性质选择合适的优化方案

线段树

应用场景:方程转移为一个区间且无单调性

[ARC085F] NRE

先按左端点排序,考虑前\(i\)个区间对答案的贡献,很容易写出\(O(n^2)\)的方程

考虑到只会有两类转移点:\(r[j]<l[i]\)\(l[i]\le r[j]\le r[j]\)\(r[j]>r[i]\)转移无贡献),且这些\(r[j]\)无序,将它们丢进两棵线段树里维护即可

p.s. Quary()的\((mid,r]\)转移的条件写错调了两个钟,绷

CF1842E. Tenzing and Triangle

关键在于想到三角形两两不相交,因为相交的合并代价更小(乐,没想到

然后就是常规线段树优化DP了

posted @ 2024-11-02 17:16  Zhone_lb  阅读(20)  评论(0)    收藏  举报