如果把实验品看成平面直角坐标系上的点的话,每个实验品所被分到的组的编号就是其右上角所有实验品的组的编号的最大值 +1。
因为显然要把包含它的所有实验品先分完才能考虑它的分组。
那么,我们可以考虑把所有实验品按照 D 降序排序,并在 D 相同时按 R 升序排序。
至于为什么一个降序一个升序,这是因为题目中的关系是严格大于,所以 D 相同的实验品之间都不会互相有贡献,通过升序来排除。
然后,因为排了序,所以不需要考虑 D 的影响。
对于 R,在权值线段树里维护即可。
其实我比赛时写了个树套树但是貌似没有考虑好细节挂掉了。
代码:
1 |
|