HHUOJ 1887 班级聚会上的游戏

题目描述

前不久小明所在的班级为了庆祝在运动会上夺得第一名,开了一场班级聚会。在聚会上大家玩了这样一个游戏:
在地上放一个圆形硬纸片,然后参加游戏的人手里拿一个尺寸随机的圆形硬纸片,向地上的硬纸片扔过去,如果两个圆形硬纸片有相交的部分,则可以获得一次抽奖的机会。
现在,告诉你两个圆形硬纸片的圆心坐标和半径长度,请你计算它们相交的面积。

输入

输入包含多组测试数据。
每组输入为一行,输入6个实数x1,y1,r1,x2,y2,r2(-1000<=x1,y1,x2,y2<=1000,0<r1,r2<=1000),表示两个圆形硬纸片的圆心坐标和半径长度。

输出

对于每组输入,输出两个圆形硬纸片的相交面积,结果保留3位小数。

样例输入

20.0 30.0 15.0 40.0 30.0 30.0

样例输出

608.366

计算几何模板题,AC代码如下:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pi acos(-1)
double eps=1e-5;struct point{double x,y;
point(double a=0,double b=0) {x=a; y=b;}
};double area(point a, double r1, point b, double r2)//两圆相交的面积
{double d = sqrt((a.x-b.x)*(a.x-b.x) + (a.y-b.y)*(a.y-b.y));if (d >= r1+r2)return 0;if (r1>r2){double tmp = r1;r1 = r2;r2 = tmp;}if(r2 - r1 >= d)return pi*r1*r1;double ang1=acos((r1*r1+d*d-r2*r2)/(2*r1*d));double ang2=acos((r2*r2+d*d-r1*r1)/(2*r2*d));return ang1*r1*r1 + ang2*r2*r2 - r1*d*sin(ang1);
}int main()
{point a,b;double r1,r2;while(cin>>a.x>>a.y>>r1>>b.x>>b.y>>r2){printf("%.3f\n",area(a,r1,b,r2));}return 0;
}

HHUOJ 1887 班级聚会上的游戏相关推荐

  1. acmclub 2081 班级聚会上的游戏

    acmclub  2081  班级聚会上的游戏(天勤考研算法练习赛(5)) 题目链接:http://zju.acmclub.com/index.php?app=problem_title&id ...

  2. 大学小说男主计算机,一部小说,男女主是大学校友,男主比较高冷,一次聚会上认识,男主对女主一见钟情,然后带去出租屋里睡了...

    一部小说,男女主是大学校友,男主比较高冷,一次聚会上认识,男主对女主一见钟情,然后带去出租屋里睡了,一.一部小说,男女主是大学校友,男主比较高冷,一次聚会上认识,男主对女主一见钟情,然后带去出租屋里睡 ...

  3. P1293 班级聚会洛谷c++题解

    P1293 班级聚会 题目描述 毕业25年以后,我们的主人公开始准备同学聚会.打了无数电话后他终于搞到了所有同学的地址.他们有些人仍在本城市,但大多数人分散在其他的城市.不过,他发现一个巧合,所有地址 ...

  4. 洛谷 P1293 班级聚会

    P1293 班级聚会 题目描述 毕业25年以后,我们的主人公开始准备同学聚会.打了无数电话后他终于搞到了所有同学的地址.他们有些人仍在本城市,但大多数人分散在其他的城市.不过,他发现一个巧合,所有地址 ...

  5. 班级聚会(reunion)

    本题连接 http://59.61.75.5:8888/JudgeOnline/showproblem?problem_id=1589 班级聚会 2010-10-31普及模拟赛(reunion) Ti ...

  6. c语言派对游戏,适合5,6人聚会玩的游戏

    适合5,6人聚会玩的游戏 导语:5,6人聚会时玩什么游戏好呢?下面就由jy135小编给大家带来一些适合5,6人聚会玩的游戏,希望大家喜欢. 适合5,6人聚会玩的游戏 适合5,6人聚会玩的游戏--喝水传 ...

  7. 在通知栏上玩游戏,Steve iOS 游戏实现思路

    在通知栏上玩游戏,Steve iOS 游戏实现思路 最近有一款游戏特别的火爆,叫做Steve ,一种可以在通知中心直接玩的游戏.作者的脑洞也是非常的大,实在让人佩服.其实实现起来也简单,就是用到了iO ...

  8. 《为iPad而设计:打造畅销App》——想象iPad上的游戏

    本节书摘来自异步社区<为iPad而设计:打造畅销App>一书中的想象iPad上的游戏,作者[英]Chris Stevens,更多章节内容可以访问云栖社区"异步社区"公众 ...

  9. 060031班第一次班级聚会

    060031第一次班级聚会 (2008.8.2) 1.活动内容和时间安排: 2.人员 参加此次活动的人员有以下几部分人组成: 1)  本班原有成员 2)  成员家属 3)  对本班有感情的所有个人和团 ...

最新文章

  1. 基于TerraDeveloper的三维GIS开发研究
  2. OpenYurt — Overview
  3. 微信小程序没登录跳到登录页怎么做_微信小程序手机端如何实现登录页面跳转含有Tabar页面...
  4. 前端校验表单项内容是否合规的JS脚本代码
  5. mysql查询后从高到低排序_[MySQL基础]三、排序查询
  6. 计算机应用基础试卷结果分析,计算机应用基础 试题
  7. 动态游标for循环_【【动图算法】(动态规划篇):最长回文子串
  8. java 工具类sort_Java 通用排序工具类ListSortUtils
  9. Kerberos加密级别不支持的问题
  10. js php后端 安全,前端JS RSA加密,PHP后端解密实现密码安全传输
  11. AFM测试探针简介-科学指南针
  12. Abaqus2020帮助文件无法搜索问题
  13. 数据降维(四)ISOMAP
  14. python爬取公众号阅读量_公众号提升阅读量!免费推荐几个互阅推广平台.
  15. 深信服X计划-云计算基础1
  16. 图片的缩放和拖拽功能
  17. python爬虫80行代码拿下喜马拉雅有声书
  18. 《信息安全工程师教程》学习笔记01(第一章)
  19. BmS电池管理系统源码,包括源理图,BOM,源码
  20. OTP语音芯片SOP8的前世今生_如九齐_硕呈_钰绅等以及国产方案KT148A

热门文章

  1. 部落冲突-家乡防御建筑-加农炮(1级至20级)
  2. 捷报频传!同程艺龙IPO在即,7月份微信小程序排名第二
  3. 网易2018实习生招聘笔试题-JAVA开发实习生
  4. python-鸢尾花分类
  5. element 验证出现英文_vue.js+element 默认提示中英文操作
  6. centos7.5安装snipe-it v5.1.2版本开源资产管理软件
  7. oracle递归查询用法
  8. 网页中留言板的制作案例
  9. iOS 相机拍照与图库
  10. 带正电荷的脂质体-阳离子脂质体表面修饰