51nod 1533 && CF538F
Posted Izaya
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了51nod 1533 && CF538F相关的知识,希望对你有一定的参考价值。
题目:难以简述,请传送门
好劲啊跪在地上。。完全没接触过K叉树的性质。。
对于每个询问,我们并不关心叶节点,只关心其他的节点。而一个完整K叉树的内节点个数是O(n/k)的,所以总计下来就是调和级数,也就是O(nlogn)个点需要我们计算。
然后对于每个点我们要查询一个区间内有多少个点权值小于它,并累计入答案。我们可以用两种方式在O(logn)时间复杂度实现这个操作
1.树状数组。我们将每个询问区间拆成[1,l-1],[1,r],然后减掉就好了。具体来说,我们把区间排序,然后依次用树状数组处理,一边计算贡献一边更新树状数组(操作过程类似于求逆序对)。
2.主席树。这个不用多赘述。
总复杂度O(nlognlogn)。
以上是关于51nod 1533 && CF538F的主要内容,如果未能解决你的问题,请参考以下文章
ACM学习历程—51NOD 1685 第K大区间2(二分 && 树状数组 && 中位数)
51nod1674??????????????????2??????????????????&???|???????????????