POJ 2546 Circular Area 几何
http://poj.org/problem?id=2546
晚上发现鼠标快不行了了!!!鼠标你肿么了,肿么突然就按键不灵了,哭,谁送我一只呀,奖励我舍友一只。哈哈。开玩笑滴~
舍友大怒说“晚上要把英语做完才去睡觉!"
我也大怒说“晚上要把这题A出来才去睡觉!”
然后我做出来了,他还没,哈哈哈哈,哥哥可以洗洗睡啦~
----------------------------------------------准备洗洗睡的分割线----------------------------------------------
大意:
给定两个圆,求他们相交的面积。
纯数学题。。高中的数学题目,以前有做过。。。但我忘光了。哭瞎了。数学渣T T
本来还想用积分的 - -||
圆的位置关系有5种:相离,外切,相交,内切,内含。
相离和外切都为0,
内切和内涵(哈哈)都为小圆。
相交嘛就是两个扇形面积减去一个四边形的面积。
#include<cstdio>
#include<cmath>
const double pi=acos(-1.0);
int main()
{
double x1,y1,r1,x2,y2,r2;
scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&r1,&x2,&y2,&r2);
double dis=sqrt((y2-y1)*(y2-y1) + (x2-x1)*(x2-x1));
if(dis >= r2+r1)
printf("0.000\n");
else if( dis <= fabs(r2-r1))
printf("%.3lf\n",r2>r1? pi*r1*r1: pi*r2*r2);
else
{
double angle1=acos( (r1*r1 + dis*dis - r2*r2 ) / (2 * r1*dis));
double angle2=acos( (dis*dis + r2*r2 - r1*r1) / ( 2 * r2 * dis ));
double s=r1*dis*sin(angle1);
double s1=angle1*r1*r1;
double s2=angle2*r2*r2;
printf("%.3lf\n",s1+s2-s);
}
return 0;
}
POJ 2546 Circular Area 几何的更多相关文章
- POJ 2546 Circular Area(两个圆相交的面积)
题目链接 题意 : 给你两个圆的半径和圆心,让你求两个圆相交的面积大小. 思路 : 分三种情况讨论 假设半径小的圆为c1,半径大的圆为c2. c1的半径r1,圆心坐标(x1,y1).c2的半径r2,圆 ...
- poj 2546(两圆公共面积)
Circular Area Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5682 Accepted: 2225 Des ...
- POJ2546 Circular Area(计算几何)
Circular Area ...
- POJ 2546 & ZOJ 1597 Circular Area(求两圆相交的面积 模板)
题目链接: POJ:http://poj.org/problem? id=2546 ZOJ:problemId=597" target="_blank">http: ...
- 【poj2546】 Circular Area
http://poj.org/problem?id=2546 (题目链接) 题意 求两圆的面积交 Solution 一道水题Wa死我了,肯定是昨晚搞太晚的缘故= =. 两圆的位置关系有5种,而这里要求 ...
- poj 1701【数学几何】
The area Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- poj 3301 Texas Trip(几何+三分)
Description After a day trip with his friend Dick, Harry noticed a strange pattern of tiny holes in ...
- poj 3168 Barn Expansion 几何yy
题链:http://poj.org/problem? id=3168 Barn Expansion Time Limit: 1000MS Memory Limit: 65536K Total Su ...
- POJ 2546
#include<iostream> #include<numeric> #include<iomanip> #include<algorithm> # ...
随机推荐
- Kinect 开发 —— Kinect Interaction 交互控件
Kinect Interactions 提供了一些新的带有姿势识别的控件如 push-to-press 按钮, grip-to-pan 列表控件, 而且支持多用户,同时二个人进行的交互,这些新添加的控 ...
- deep-in-es6(七)
Symbols对象 JavaScript的第七种原始类型 以前的数据类型: Undefined 未定义 Null 空值 Boolean 布尔类型 Number 数字类型 String 字符串类型 Ob ...
- 前端js中this指向及改变this指向的方法
js中this指向是一个难点,花了很长时间来整理和学习相关的知识点. 一. this this是JS中的关键字, 它始终指向了一个对象, this是一个指针; 参考博文: JavaScript函数中的 ...
- django第三方库
1. django_celery_beat 作用:网页端配置定时任务 注意:1,需要迁移表格 2.需要注册app python3 manage.py makemigrations python3 ma ...
- HDU——T 4738 Caocao's Bridges
http://acm.hdu.edu.cn/showproblem.php?pid=4738 Time Limit: 2000/1000 MS (Java/Others) Memory Limi ...
- 1.22 Python基础知识 - 正则表达式
Python正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re ...
- 3、Task.Factory属性
3.Task.Factory属性 Task类提供了一个Factory静态属性,这个属性返回一个TaskFactory对象. Task task = Task.Factory.StartNew(Task ...
- Django路由分配以及模版渲染
路由上: 在网络上区分不同的电脑通过IP.端口和网卡的MAC地址等,在web框架中怎么区分不同的请求呢,就是通过 ‘url(路由)’ ,url 学名叫做全球统一资源定位符,其实就是一个网址 一个url ...
- Keil 编译环境之在线仿真调试问题
一.问题现象: 这几天刚开始上手STM32,使用Keil 环境进行编程,然后使用ULINK2进行在线仿真,在按键处理函数程序中设置断点,却发现按了按键程序没有停在设置的断点,程序正常运行,如下图所示, ...
- Android Studio中怎样引用图片资源
随着不断接触Android Studio,越来越发现和Eclipse有着巨大的差别. 不管是表面的目录结构,还是内在对各种资源的管理. 本篇就来聊聊Android Studio中怎样来显示图片. 以及 ...