2022.7.28 闲话
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨啊我好惨
好了不魔怔了,说一下老生常谈的区间覆盖 .
区间覆盖问题
给 \(n\) 个区间 \([l_i,r_i]\),问至少选多少区间可以覆盖 \([1,m]\) .
很多做法啊 .
Algorithm 1 对于每个区间从 \(l_i\) 向 \(r_i+1\) 建一条长度为 \(1\) 的边,再向 \(i\) 到 \(i-1\) 建一条长度为 \(0\) 的边,然后跑最短路,复杂度取决于最短路的复杂度 .
或者说我们注意到边权只有 0 和 1 可以直接 01BFS,\(O(n)\) .
Algorithm 2 扫一遍,令 \(L\) 为目前的左端点,\(R\) 记录目前能到达的最右 .
按左端点排序,扫到一个区间的 \([l,r]\) 时,只需找一个区间 \([l',r']\) 使得 \(l'<=l+1\),\(r'\) 尽量大,注意 \(L,R\) 单调不减,所以可以单调队列维护,\(O(n)\) .
Algorithm 3 到带 log 丢人算法了 .
令 \(dp_i\) 表示覆盖 \([1,i]\) 的答案,则枚举上一个区间选的位置可以得到:
其中 \(\operatorname{minl}(i)\) 是以右端点为 \(i\) 的区间中左端点最小的 .
发现这个区间 min 可以线段树优化,于是就 \(O(n\log n)\) 了 .
似乎这个问题 ST 表也可以做,因为 ST 表末尾插元素复杂度大概是对的 .
总时间复杂度 \(O(n\log n)\) .
Cleaning Shifts
给 \(n\) 个区间 \([l_i,r_i]\),每个区间有一个价值 \(w_i\),选一些区间覆盖 \([1,m]\),使得价值和最大 .
用原来的 Algorithm 1 和 Algorithm 3 照样能做,还是 \(O(n\log n)\) 的 .
Algorithm 2 大概不行 .
好水啊 .
但是闲话水点不也挺好吗 .
甚至这种闲话以后可能还会更新 。
yspm 速速冲 chess.com rank1 .
以下是博客签名,正文无关
本文来自博客园,作者:Jijidawang,转载请注明原文链接:https://www.cnblogs.com/CDOI-24374/p/16530242.html
版权声明:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议(CC BY-NC-SA 4.0)进行许可。看完如果觉得有用请点个赞吧 QwQ