【做题记录】SHOI2007 园丁的烦恼
-
\(\text{SHOI2007}\) 园丁的烦恼
- 算法:cdq 分治
题目:
给定 \(n\) 棵树的坐标,\(m\) 次查询,每次询问以 \((x_1,y_1)\) 为左下角,\((x_2,y_2)\) 为右上角的矩形内树的数量。
\(0 \leq n \leq 5 \times 10^5\),\(1 \leq m \leq 5 \times 10^5\)。
题解:
令 \(s_{i,j}\) 表示以 \((1,1)\) 为左下角、\((i,j)\) 为右上角的矩阵内的树的数量。
那么每组询问即为
\(ans=s_{x_2,y_2}-s_{x_1-1,y_2}-s_{x_2,y_1-1}+s_{x_1-1,y_1-1}\)。
记录每个树出现的坐标,像桶。
然后这是一个二维偏序。
按照 \(x,y\) 轴排个序就好了。

浙公网安备 33010602011771号