编程题
农场阳光 ### 题目描述 X 星球十分特殊,它的自转速度与公转速度相同,所以阳光总是以固定的角度照射。 最近,X 星球为发展星际旅游业,把空间位置出租给 Y 国游客来晒太阳。每个租位是漂浮在空中的圆盘形彩云(圆盘与地面平行)。当然,这会遮挡住部分阳光,被遮挡的土地植物无法生长。 本题的任务是计算某个农场宜于作物生长的土地面积有多大。 ### 输入描述 输入数据的第一行包含两个整数 $a, b$,分别表示某农场的长和宽,此时,该农场的范围是由坐标 $(0, 0, 0), (a, 0, 0), (a, b, 0), (0, b, 0)$围成的矩形区域。 第二行包含一个实数 $g$,表示阳光照射的角度。简单起见,我们假设阳光光线是垂直于农场的宽的,此时正好和农场的长的夹角是 $g$ 度,此时,空间中的一点 $(x, y, z)$ 在地面的投影点应该是 $(x + z \times ctg(g度), y,0)$,其中 $ctg(g度)$ 表示 $g$ 度对应的余切值。 第三行包含一个非负整数 $n$ ,表示空中租位个数。 接下来 $n$ 行,描述每个租位。其中第 $i$行包含 4 个整数 $x_i, y_i, z_i, r_i$,表示第 $i$ 个租位彩云的圆心在 $(x_i, y_i, z_i)$ 位置,圆半径为 $r_i$。 ### 输出描述 要求输出一个实数,四舍五入保留两位有效数字,表示农场里能长庄稼的土地的面积。 ### 输入输出样例 #### 示例 > 输入 ```txt 10 10 90.0 1 5 5 10 5 ``` > 输出 ```txt 21.46 ```
查看答案
赣ICP备20007335号-2