#11565. 统计圆内格点数目

内存限制:256 MiB 时间限制:1000 ms 输入文件: ygd.in 输出文件: ygd.out
题目类型:传统 评测方式:文本比较
上传者: Turing001

题目描述

给你一个二维整数数组 c ,其中 每一行有三个数 xi, yi, ri, 表示网格上圆心为 (xi, yi) 且半径为 ri 的第 i 个圆,输出出现在 至少一个 圆内的 格点数目 。

注意:格点 是指整数坐标对应的点。圆周上的点 也被视为出现在圆内的点。网格坐标的范围是:0 ~ 200。

输入格式

第一行,n,表示 n 个圆

接下来 n 行,每一行 3 个整数,分别表示圆心的坐标 xi,yi,和圆的半径 ri

输出格式

至少一个 圆内的 格点数目

样例

示例 1:

输入:

1
2 2 1

输出:

5

解释:

给定的圆如上图所示。
出现在圆内的格点为 (1, 2)、(2, 1)、(2, 2)、(2, 3) 和 (3, 2),在图中用绿色标识。
像 (1, 1) 和 (1, 3) 这样用红色标识的点,并未出现在圆内。
因此,出现在至少一个圆内的格点数目是 5 。

示例 2:

输入:

2
2 2 2
3 4 1

输出:

16

解释:

给定的圆如上图所示。
共有 16 个格点出现在至少一个圆内。
其中部分点的坐标是 (0, 2)、(2, 0)、(2, 4)、(3, 2) 和 (4, 4) 。

数据范围与提示

1 <= n <= 200

1 <= xi, yi <= 100

1 <= ri <= min(xi, yi)