HDU-5858-Hard problem(几何)
来源:互联网 发布:unix环境编程视频 编辑:程序博客网 时间:2024/05/20 23:07
链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5858
题意:知道正方形边长,求阴影部分面积
题解:直接求出两圆相交部分面积。
CODE:
#include <bits/stdc++.h>using namespace std;#define PI acos(-1)#define eps 1e-5double Area_of_overlap(double d,double r1,double r2){ if(r1 + r2 < d + eps)return 0; if(d < fabs(r1 - r2) + eps) { double r = min(r1,r2); return PI*r*r; } double x = (d*d + r1*r1 - r2*r2)/(2*d); double t1 = acos(x / r1); double t2 = acos((d - x)/r2); return r1*r1*t1 + r2*r2*t2 - d*r1*sin(t1);}int main(){ int t; double l; double d; double r1,r2; double ans; double s; scanf("%d",&t); while(t--) { scanf("%lf",&l); d=sqrt(2.0)/2.0*l; r1=l; r2=l/2.0; s=PI*r2*r2; ans=Area_of_overlap(d,r1,r2); ans=2*(s-ans); printf("%.2lf\n",ans); } return 0;}
0 0
- HDU 5858 Hard problem (几何)
- HDU-5858-Hard problem(几何)
- HDU 5858 Hard problem(计算几何)
- HDU 5858 Hard problem(计算几何)
- HDU-5858 Hard problem(计算几何)
- HDU 5858 Hard problem(几何)
- HDU 5858 Hard problem——计算几何(微积分)
- hdu 5858 Hard problem【计算几何+思维】
- HDU-5858 Hard problem(数学公式、计算几何)
- HDU 5858 Hard problem(计算几何)【较难】【多校联合8.18】
- hdu 5858 Hard problem
- hdu 5858 Hard problem
- HDU 5858 Hard Problem
- hdu 5858 Hard problem
- HDU 5858 Hard problem (公式推导)
- 数学题(Hard problem,HDU 5858)
- hdu5858 Hard problem (计算几何)
- HDU 5858 Hard problem 2016多校10 1002 [相交圆面积]【计算几何】
- c++中string的模拟实现
- 编程之美读书笔记-队列中取最大值操作问题
- 在安卓中设置控件宽高是屏幕的一半
- day23套接字socket网络传输TCP和udp
- socket协议的接口测试方法
- HDU-5858-Hard problem(几何)
- OpenCV 图片尺寸缩放
- 1-3-3 ARM伪指令以及协处理器访问指令
- 32位保护模式学习小结(4)---分页机制概述
- 学习hadoop学什么?
- 数组-插入元素
- 07 总结ProgressDialog 异步任务
- 嵌入式学习--work3--显示器学习
- 一步步地分析排序——选择排序