老C的任务

P3755 [CQOI2017] 老C的任务

考虑 CDQ 分治。

考虑到查询子区间,可以采用类似于二位前缀和的方式,然后答案就转换成对于每个子矩形上的点,查询原有的点满足二维偏序的方式。我们可以将原有的点标记为 \(0\),新点标记为 \(1\),这样又转换成一个三维偏序问题。但是这时我们无需使用数据结构维护,可以直接用一个变量记录标号为 \(0\) 的点功率和即可。

时间复杂度 \(O(n\log n)\)

代码中将多个变量压缩成了一个。

code

双倍经验:园丁的烦恼

posted @ 2023-07-28 21:35  wscqwq  阅读(4)  评论(0编辑  收藏  举报