求助!
  • 板块学术版
  • 楼主q1haoyu_QiQi
  • 当前回复1
  • 已保存回复1
  • 发布时间2022/11/7 20:08
  • 上次更新2023/10/27 03:54:13
查看原帖
求助!
728935
q1haoyu_QiQi楼主2022/11/7 20:08

方伯伯浇水2

题目描述

方伯伯有一块玉米田,玉米田可以视为平面直角坐标系上横纵坐标在 105-10^510510^5 范围内(包括边界)的一片正方形区域。玉米田内的每个整点(横纵坐标均为整数的点)上都种着一株玉米。

方伯伯连续 mm 天对玉米田进行浇水,每天他会选出一个圆心坐标为 (x,y)(x,y),半径为 rr 的圆形区域,对其中(不包括边界)的每株玉米浇一次水(如果圆形区域超过玉米田边界,超过部分无需浇水)。最开始所有玉米的品质都是 11,每次浇水会让该株玉米的品质增 11

mm 天过后,到了收获的季节,方伯伯想采用抽样检测的方式来调查玉米田的品质。方伯伯给出了 1010 株玉米的坐标,他想调查这 1010 株玉米品质的平均数。

输入格式

第一行输入一个正整数 mmm105m\le10^5),代表浇水天数。 接下来 mm 行,每行输入三个整数 xi,yix_i,y_i105xi,yi105-10^5\le x_i,y_i\le 10^5)和 rir_i0<ri1050<r_i\le10^5),代表第 ii 天浇水的圆形区域。

接下来 1010 行,每行输入两个整数 xi,yix_i,y_i105xi,yi105-10^5\le x_i,y_i\le 10^5),代表收获季节调查的 1010 株玉米的坐标。

输出格式

输出一个数字(保留 22 位小数),代表调查的这 1010 株玉米品质的平均数。

样例 #1

样例输入 #1

2
3 4 5
-1 0 1
-1 0
0 0
1 0
2 0
3 0
-1 -1
0 -1
1 -1
2 -1
3 -1

样例输出 #1

1.40

提示

判断点 (x1,y1)(x_1,y_1) 与圆 (x0,y0,r0)(x_0,y_0,r_0) 的方法是:

计算点 (x1,y1)(x_1,y_1) 到圆心 (x0,y0)(x_0,y_0) 的距离的平方 d2=(x1x0)2+(y1y0)2d^2=(x_1-x_0)^2+(y_1-y_0)^2,将这个值与圆的半径的平方 r02r_0^2 作比较:

  • 如果 d2<r02d^2<r_0^2,说明点在圆内;
  • 如果 d2=r02d^2=r_0^2,说明点在圆上;
  • 如果 d2>r02d^2>r_0^2,说明点在圆外。
2022/11/7 20:08
加载中...