给定平面上的 $n$ 个圆盘。每个圆盘的圆心坐标均为整数,半径为正整数。任意两个圆盘的内部区域均不重叠,但圆盘之间可能相切。
你的任务是判断是否可以通过改变圆盘的半径,使得满足以下条件:
- 原本相切的圆盘保持相切。
- 任意两个圆盘的内部区域均不重叠。
- 所有半径之和严格减小。
新的半径可以是任意正实数。圆盘的圆心坐标不能改变。
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 1000$),表示圆盘的数量。
接下来的 $n$ 行,每行包含三个整数。第 $i$ 行包含 $x_i, y_i$ ($-10^9 \le x_i, y_i \le 10^9$) 和 $r_i$ ($1 \le r_i \le 10^9$),分别表示第 $i$ 个圆盘的圆心坐标和半径。
输出格式
如果可以通过上述方式改变半径,输出 YES,否则输出 NO。
样例
输入 1
5 0 2 1 0 0 1 4 -3 4 11 0 3 11 5 2
输出 1
YES
说明 1
样例 1 的解释。 可以将第一个和第三个圆盘的半径减小 0.5,并将第二个圆盘的半径增加 0.5。这样,所有半径之和减小了 0.5。改变半径前后的情况如下图所示。
第一个样例(左)以及一种改变圆盘半径的有效方式(右)。
输入 2
4 2 2 2 7 2 3 7 7 2 2 7 3
输出 2
NO
说明 2
样例 2 的解释。 如下图所示,无法以所需方式改变圆盘的半径。
第二个样例。