AT_arc022_4 [ARC022D] スプリンクラー

题目描述

高桥君管理着世界上数一数二广阔的花田。在这片花田中,只有一朵世界上最美丽的花盛开着。花田中的每一个点都用到这朵世界第一的花的距离来表示。从这朵花向东移动 $x$,向南移动 $y$ 的点的位置记作 $(x, y)$。高桥君非常细心,他会在所有 $x$ 和 $y$ 都是整数的点 $(x, y)$ 上种上一朵花,除此之外的地方不会种花。 更正式地说,在直角坐标系上的所有格点上都种有一朵花,原点上种着世界第一的花。格点以外的点没有花。 世界第一的花需要大量的水。因此,高桥君决定在花田中的 $N$ 个地方安装喷灌器。每个喷灌器都安装在 $x$ 和 $y$ 都是整数的点 $(x, y)$ 上。同一个位置不会安装两个或以上的喷灌器。每个喷灌器会以圆形范围洒水。如果半径越大,洒水的范围就越大,但为了节省开支,每个喷灌器的洒水半径都恰好能覆盖到世界第一的花。也就是说,喷灌器的洒水半径等于喷灌器与世界第一的花之间的距离。 高桥君想知道,启动所有喷灌器后,有多少朵花能够被浇到水。 给定每个喷灌器的位置,请计算能够被浇到水的花的数量。

输入格式

输入通过标准输入按以下格式给出。 > $N$ > $x_1\ y_1$ > $x_2\ y_2$ > $\vdots$ > $x_N\ y_N$ - 第 $1$ 行给出喷灌器的数量 $N$,满足 $1 \leq N \leq 10^5$。 - 接下来的 $N$ 行中,第 $i$ 行给出两个整数 $x_i, y_i$,满足 $-10^5 \leq x_i, y_i \leq 10^5$,表示第 $i$ 个喷灌器的位置为 $(x_i, y_i)$。 - 对于 $i \neq j$,$(x_i, y_i) \neq (x_j, y_j)$ 恒成立。 - $(x_i, y_i) \neq (0, 0)$ 恒成立。

输出格式

请输出能够被浇到水的花的数量,输出一行,末尾需换行。

说明/提示

### 部分分 本题设有部分分。 - 若能通过所有 $N \leq 100$ 且 $-100 \leq x_i, y_i \leq 100$ 的测试点,得 $10$ 分。 - 若能通过所有 $N \leq 1,000$ 且 $-1,000 \leq x_i, y_i \leq 1,000$ 的测试点,再得 $20$ 分,共 $30$ 分。 - 若能通过所有 $N \leq 10^5$ 且 $-1,000 \leq x_i, y_i \leq 1,000$ 的测试点,再得 $30$ 分,共 $60$ 分。 - 若能通过所有 $N \leq 10^5$ 且 $-10^5 \leq x_i, y_i \leq 10^5$ 的测试点,再得 $40$ 分,共 $100$ 分。 ### 样例解释 1 如下图所示。绿色的点表示被浇到水的花。红色的点是世界第一的花的位置。绿色和红色点一共是 $9$ 个。 ![](/img/arc/022/4-1.png) ### 样例解释 2 如下图所示。 ![](/img/arc/022/4-2.png) ### 样例解释 3 如下图所示。 ![](/img/arc/022/4-3.png) 由 ChatGPT 4.1 翻译