1.
一眼,区间肯定到结尾
然后从后面扫,随便统计一下个数即可
2.
刚看很难
再看诈骗
发现限制是要求同等深度,然后最小的必须有两个
然后这个是个独立问题,一看就很简单
3.
烤柿没调出来,改一个地方就过了
服了,如此实力,如何 NOIP ?
发现每个位置维护 \(f[i]\) 表示 \(i\) 开头最短的合法右端点
发现这个单调
用线段树二分
然后这个求答案分两部分,转移直接区间覆盖
4.
暴力是用并查集暴力两两合并
肯定要优化建边条数
我考虑分块,对每个数往后分 \(\sqrt{n}\) ,最后连边整块的
这样对整块再用一个并查集就行了
复杂度 \(n \sqrt{n}\)
正解是用倍增 + ST 表