#3283. 通信救援

通信救援

说明

众所周知,在同一平面内到定点的距离等于定长的点的集合叫做圆。这个定点叫做圆的圆心,定长即圆的半径。
同时用圆心的坐标和圆的半径,就可以确定圆在平面内的位置, 在本题当中,我们根据圆在平面覆盖的区域来描述信号站的有效通信范围。
某一天,A 城因暴雨天气,导致 $n$ 个信号站通信中断,第 $i$ 个信号站的坐标为 $(x_i,y_i)$ ,同时以$(r_i)$为圆的半径,这个圆覆盖的区域代表第 $i$ 个信号站的有效通信范围。

设置 $d_{i,j}$ 为两个信号站圆心之间的直线距离,[公式链接]

 https://baike.baidu.com/item/%E4%B8%A4%E7%82%B9%E9%97%B4%E8%B7%9D%E7%A6%BB%E5%85%AC%E5%BC%8F/6773405

当第 $i$ 个信号站恢复通信时,根据第 $j$ 个信号站与其的距离分类讨论:

1. 当 $d_{i,j}$ <= $(r_i+r_j)$ 时,由于通信共享,第 $j$ 个信号站也恢复通信作用。
2. 当 $d_{i,j}$ > $(r_i+r_j)$ 时,由于距离较远,第 $j$ 个信号站无法恢复通信作用。
一位技术工程师可以前往一个信号站救援通信,问最少需要多少位技术工程师可以恢复 A 城的所有通信网络?

样例解释如图所示:第一位工程师恢复紫色区域的信号站,第二位工程师恢复黑色区域的信号站时,由于通信共享红色和蓝色区域依次恢复通信。

输入格式

第一行一个整数 $n$,表示 A 城的 $n$ 个信号站通信中断。
接下来 $n$ 行,每行三个整数 $x_i,y_i,r_i$ 表示第 $i$ 个信号站的坐标和通信范围。

输出格式

输出一个整数,表示最少的人数可以恢复 A 城的通信。

样例

4
2 2 2
4 4 1
4 7 3
-3 5 2
2

提示

【数据范围】

对于$30$%的数据:$1 ≤ n ≤ 20$,$-100 ≤ x_i,y_i ≤  100$,$1≤r_i≤100$。

对于$100$%的数据保证:$1 ≤ n ≤ 5000$,$-1000 ≤ x_i,y_i ≤  1000$,$1≤r_i≤100$。