P8259 [CTS2022] 回 解题报告
P8259 [CTS2022] 回 解题报告:
题意
你需要支持二维平面上的两种操作:
- 将距离 \((x,y)\) 切比雪夫距离不超过 \(d\) 的点点权加上 \(w(d-切比雪夫距离)\)。(“回”字形加)
- 查询矩形点权和。
\(1\leqslant m\leqslant 10^5\)。
分析
差分一下,变成一次斜率为 \(1\) 的线段加和一次斜率为 \(-1\) 的线段减,再差分一下就是射线。
发现修改一个位置对询问的影响是两次二维前缀和,即修改 \((x,y,w)\) 对询问 \((X,Y)\)(\(x\leqslant X,y\leqslant Y\))的贡献是 \(w(X-x+1)(Y-y+1)\),于是我们就是要维护矩形内的 \(\sum w,\sum wx,\sum wy,\sum wxy\)。
对于第一种射线加,随便算算就知道,其就是给满足二维偏序的点 \((x,y)\) 加上一个关于 \(x,y\) 的多项式。
第二种射线加性质稍微差一点,可以发现它很像三角形数点,利用类似的方法可以差分出若干个二维数点,贡献和第一种是类似的。
离线下来 cdq 分治即可,复杂度 \(O(n\log^2 n)\)。