Problem
有$n$个元素,每个元素有三个属性:$a_i$,$b_i$,$c_i$
定义$f[i]$为满足$aj < a_i$ 且 $b_j < b_i$ 且 $c_j < c i$的$j$的个数
$ans[i] = \sum_{j = 1}^{j \leq n} f[j] = i$
求所有的$ans[i]$;
陌上花开,心忧梓桑。
Solution
$CDQ$分治模板题
首先以$a$为关键字排序,省略一维
再以$b$为关键字用类似于归并排序求逆序对的方法进行归并
最后用树状数组统计$c$这一维
简单来说就是归并排序套树状数组。
有点像点分治?
调了不知道多久,最后发现树状数组范围打错了(原地爆炸.jpg)
Code
1 |
|