bzoj4059
Posted yinwuxiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bzoj4059相关的知识,希望对你有一定的参考价值。
题解:
还是一道不错的题目
首先它要求每个区间都满足要求,所以我们很容易想到将它映射到二维平面上
然后我们算出每个数的前驱以及后继li,ri
那么第一维是li-i,第二维是i-ri的区间就是合法的,同理交换
这样就变成了矩形覆盖问题
然后因为是不能遍历所有点的所以二维差分是不行的
2种方法
1.线段树+扫描线,将矩形两条边变为一条插入一条删除 nlogn
2.二维线段树 nlog^2n
另外正解其实也是很好想的
我们注意到如果有一个元素在整个序列中只出现了一次,序列就被分割为两个了
所以我们只要从两边一起向中间寻找就可以了
为什么这个复杂度是对的?
因为它是启发式合并的逆过程,每次分裂的复杂度是较小的那个
*不太想写正解没什么意思。。
代码:
以上是关于bzoj4059的主要内容,如果未能解决你的问题,请参考以下文章
bzoj4059 [Cerc2012]Non-boring sequences
BZOJ 4059 Non-boring sequences
BZOJ4059[Cerc2012]Non-boring sequences 分治
bzoj4059 [Cerc2012]Non-boring sequences