fork download
  1. #include<stdio.h>
  2. struct xy {
  3. int x, y, p;
  4. }a[1212];
  5. bool is_in(xy a, xy b) {
  6. int d = (a.x - b.x)*(a.x - b.x) + (a.y - b.y)*(a.y - b.y);
  7. return d <= a.p*a.p;
  8. }
  9. int n;
  10. bool is_gone[1212];
  11. void dfs(int w) {
  12. is_gone[w] = 1;
  13. for (int i = 0; i < n; i++) {
  14. if (is_gone[i])continue;
  15. if(is_in(a[w],a[i]))dfs(i);
  16. }
  17. }
  18. int main() {
  19. int i, j, ans = 0;
  20. scanf("%d", &n);
  21. for (i = 0; i < n; i++)scanf("%d%d%d", &a[i].x, &a[i].y, &a[i].p);
  22. for (i = 0; i < n; i++) {
  23. int res = 0;
  24. dfs(i);
  25. for (j = 0; j < n; j++) {
  26. res += is_gone[j];
  27. is_gone[j] = 0;
  28. }
  29. if (ans < res)ans = res;
  30. }
  31. printf("%d", ans);
  32. return 0;
  33. }
Success #stdin #stdout 0s 4344KB
stdin
4
1 3 5
5 4 3
7 2 1
6 1 1
stdout
3