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 几何的更多相关文章

  1. POJ 2546 Circular Area(两个圆相交的面积)

    题目链接 题意 : 给你两个圆的半径和圆心,让你求两个圆相交的面积大小. 思路 : 分三种情况讨论 假设半径小的圆为c1,半径大的圆为c2. c1的半径r1,圆心坐标(x1,y1).c2的半径r2,圆 ...

  2. poj 2546(两圆公共面积)

    Circular Area Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5682   Accepted: 2225 Des ...

  3. POJ2546 Circular Area(计算几何)

                                                                                Circular Area            ...

  4. POJ 2546 &amp; ZOJ 1597 Circular Area(求两圆相交的面积 模板)

    题目链接: POJ:http://poj.org/problem? id=2546 ZOJ:problemId=597" target="_blank">http: ...

  5. 【poj2546】 Circular Area

    http://poj.org/problem?id=2546 (题目链接) 题意 求两圆的面积交 Solution 一道水题Wa死我了,肯定是昨晚搞太晚的缘故= =. 两圆的位置关系有5种,而这里要求 ...

  6. poj 1701【数学几何】

    The area Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  7. poj 3301 Texas Trip(几何+三分)

    Description After a day trip with his friend Dick, Harry noticed a strange pattern of tiny holes in ...

  8. poj 3168 Barn Expansion 几何yy

    题链:http://poj.org/problem? id=3168 Barn Expansion Time Limit: 1000MS   Memory Limit: 65536K Total Su ...

  9. POJ 2546

    #include<iostream> #include<numeric> #include<iomanip> #include<algorithm> # ...

随机推荐

  1. Kinect 开发 —— Kinect Interaction 交互控件

    Kinect Interactions 提供了一些新的带有姿势识别的控件如 push-to-press 按钮, grip-to-pan 列表控件, 而且支持多用户,同时二个人进行的交互,这些新添加的控 ...

  2. deep-in-es6(七)

    Symbols对象 JavaScript的第七种原始类型 以前的数据类型: Undefined 未定义 Null 空值 Boolean 布尔类型 Number 数字类型 String 字符串类型 Ob ...

  3. 前端js中this指向及改变this指向的方法

    js中this指向是一个难点,花了很长时间来整理和学习相关的知识点. 一. this this是JS中的关键字, 它始终指向了一个对象, this是一个指针; 参考博文: JavaScript函数中的 ...

  4. django第三方库

    1. django_celery_beat 作用:网页端配置定时任务 注意:1,需要迁移表格 2.需要注册app python3 manage.py makemigrations python3 ma ...

  5. HDU——T 4738 Caocao's Bridges

    http://acm.hdu.edu.cn/showproblem.php?pid=4738 Time Limit: 2000/1000 MS (Java/Others)    Memory Limi ...

  6. 1.22 Python基础知识 - 正则表达式

    Python正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re ...

  7. 3、Task.Factory属性

    3.Task.Factory属性 Task类提供了一个Factory静态属性,这个属性返回一个TaskFactory对象. Task task = Task.Factory.StartNew(Task ...

  8. Django路由分配以及模版渲染

    路由上: 在网络上区分不同的电脑通过IP.端口和网卡的MAC地址等,在web框架中怎么区分不同的请求呢,就是通过 ‘url(路由)’ ,url 学名叫做全球统一资源定位符,其实就是一个网址 一个url ...

  9. Keil 编译环境之在线仿真调试问题

    一.问题现象: 这几天刚开始上手STM32,使用Keil 环境进行编程,然后使用ULINK2进行在线仿真,在按键处理函数程序中设置断点,却发现按了按键程序没有停在设置的断点,程序正常运行,如下图所示, ...

  10. Android Studio中怎样引用图片资源

    随着不断接触Android Studio,越来越发现和Eclipse有着巨大的差别. 不管是表面的目录结构,还是内在对各种资源的管理. 本篇就来聊聊Android Studio中怎样来显示图片. 以及 ...