www 被大佬们吊打|

wscqwq

园龄:2年粉丝:2关注:3

ABC351F

F - Double Sum

题意简述

Just it.

思路1

发现很像求正序对,但是需要具体数字计算。

只考虑 AjAi>0,那么我们把 Aj,Ai 分开计算。

考虑 Aj 被计算的清形,其实就是以它结尾的正序对个数。

考虑 Ai 被计算的清形,其实就是以它开头的正序对个数,翻转序列,转化为以它结尾的逆序对个数。

离散化+树状数组经典做法,复杂度 O(nlogn)

https://atcoder.jp/contests/abc351/submissions/52981274

思路2

其实就是求每个数 x 后面比它大的数的总和 sum 与个数 cntsumxcnt)。

考虑倒着插入,然后 fhq-treap 每个节点维护权值和与 size。

查的时候直接分裂出一个 >x 的就可以了。

复杂度 O(nlogn),常数比树状数组大得多。

还是这个思路,也可以用树状数组,一个只统计个数,一个统计权值和,和思路1的效率差不多。

平衡树:https://atcoder.jp/contests/abc351/submissions/52879648

树状数组:https://atcoder.jp/contests/abc351/submissions/52981600

本文作者:wscqwq

本文链接:https://www.cnblogs.com/wscqwq/p/18169020

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   wscqwq  阅读(8)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起