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

BZOJ 4059 [Cerc2012]Non-boring sequences(启发式分治)

BZOJ 1179 Apio2009 Atm