2021杭电多校第八场 HDU7063-Square Card(求两圆相交面积)

网友投稿 840 2022-11-17

2021杭电多校第八场 HDU7063-Square Card(求两圆相交面积)

2021杭电多校第八场 HDU7063-Square Card(求两圆相交面积)

​​传送门​​

思路:

代码

struct point{ double x,y;};double c(point a, double r1, point b, double r2,double t){ 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(d==r1+r2) return t*t; if (r1>r2){ double tmp = r1; r1 = r2; r2 = tmp; } if(r2 - r1 >= d) return pi*r1*r1; double g1=acos((r1*r1+d*d-r2*r2)/(2*r1*d)); double g2=acos((r2*r2+d*d-r1*r1)/(2*r2*d)); return g1*r1*r1 + g2*r2*r2 - r1*d*sin(g1);}int main(){ int _=read; while(_--){ double x1,y1,r1,x2,y2,r2,a; cin>>r1>>x1>>y1>>r2>>x2>>y2>>a; if(r2*r2-a*a/4<=0) puts("0.000000"); else{ double R1=sqrt(r1*r1-a*a/4)-a/2; double R2=sqrt(r2*r2-a*a/4)-a/2; //cout<

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring07----Bean的作用域
下一篇:STL 与 线程安全
相关文章

 发表评论

暂时没有评论,来抢沙发吧~