HDU-5858-Hard problem(几何)

原创 2016年08月30日 20:14:52

链接: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-5
double 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;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

HDU 5858 Hard problem(计算几何)【较难】【多校联合8.18】

题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5858解题思路: 看懂这个图,这个题就能A掉了。 下面是AC代码:#include ...

hdu 5858 Hard problem

想到辅助线就可以写了 #include #include #include #include #include #include #include #include #include...

hdu 5858 Hard problem【计算几何+思维】

Hard problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

HDU 5858 Hard problem(计算几何)

Hard problem Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 65536/65536 K (Java/Othe...
  • Hytai
  • Hytai
  • 2016-09-16 17:27
  • 99

hdu5858 Hard problem (计算几何)

hdu5858 Hard problem (计算几何):http://acm.split.hdu.edu.cn/showproblem.php?pid=5858 题目描述: Hard proble...

HDU 5858 Hard problem 2016多校10 1002 [相交圆面积]【计算几何】

题目连接 : 就当前HDU的情况 就先不给了 ——————————————————————–. Hard problemTime Limit: 2000/1000 MS (Java/Others...

HDU 5858 Hard problem(求角度的模板)

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Problem Description...

HDU5858 Hard problem

题意:求阴影部分面积。 思路:就是小圆的面积减去大圆与小圆面积交的二倍。 #include #include #include #include #include #include #includ...

#2016多校训练Contest10: 1002 Hard problem hdu5858

题目链接http://acm.split.hdu.edu.cn/showproblem.php?pid=5858 Hard problemProblem Descriptioncjj is fun w...

【HDU5828】Hard problem(计算几何)

参考博客:http://www.cnblogs.com/inmoonlight/p/5788081.html #include #include #include #include #inc...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)