首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >第四届蓝桥杯决赛B组C/C++——牧场阳光

第四届蓝桥杯决赛B组C/C++——牧场阳光

作者头像
mathor
发布2018-06-22 10:03:02
发布2018-06-22 10:03:02
8770
举报
文章被收录于专栏:mathormathor

标题:农场阳光

X星球十分特殊,它的自转速度与公转速度相同,所以阳光总是以固定的角度照射。最近,X星球为发展星际旅游业,把空间位置出租给Y国游客来晒太阳。每个租位是漂浮在空中的圆盘形彩云(圆盘与地面平行)。当然,这会遮挡住部分阳光,被遮挡的土地植物无法生长。

本题的任务是计算某个农场宜于作物生长的土地面积有多大。

输入数据的第一行包含两个整数a, b,表示某农场的长和宽分别是a和b,此时,该农场的范围是由坐标(0, 0, 0), (a, 0, 0), (a, b, 0), (0, b, 0)围成的矩形区域。

第二行包含一个实数g,表示阳光照射的角度。简单起见,我们假设阳光光线是垂直于农场的宽的,此时正好和农场的长的夹角是g度,此时,空间中的一点(x, y, z)在地面的投影点应该是(x + z * ctg(g度), y, 0),其中ctg(g度)表示g度对应的余切值。

第三行包含一个非负整数n,表示空中租位个数。

接下来 n 行,描述每个租位。其中第i行包含4个整数xi, yi, zi, ri,表示第i个租位彩云的圆心在(xi, yi, zi)位置,圆半径为ri。

要求输出一个实数,四舍五入保留两位有效数字,表示农场里能长庄稼的土地的面积。

用户输入:

10 10

90.0

1

5 5 10 5

程序应该输出:

21.46

用户输入:

8 8

90.0

1

4 4 10 5

程序应该输出:

1.81

用户输入:

20 10

45.0

2

5 0 5 5

8 6 14 6

程序输出:

130.15

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-04-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档