动态逆序对 bzoj-3295 Cqoi-2011
题目大意:题目链接。
注释:略。
想法:直接建立主席树。
由于是一个一个删除,所以我们先拿建立好的root[n]的权值线段树先把总逆序对求出来,接着没删一个数,我们就删掉这个点作为右端点的逆序对和作为左端点的逆序对。
这个过程我们直接模拟树状数组。我们叫它阉割树状数组。
这样的话复杂度是O(nlogn+mlogn)。
代码实在太丑了
光注释就上K了。
不贴代码了。
小结:好题。
动态逆序对 bzoj-3295 Cqoi-2011
题目大意:题目链接。
注释:略。
想法:直接建立主席树。
由于是一个一个删除,所以我们先拿建立好的root[n]的权值线段树先把总逆序对求出来,接着没删一个数,我们就删掉这个点作为右端点的逆序对和作为左端点的逆序对。
这个过程我们直接模拟树状数组。我们叫它阉割树状数组。
这样的话复杂度是O(nlogn+mlogn)。
代码实在太丑了
光注释就上K了。
不贴代码了。
小结:好题。