zoukankan      html  css  js  c++  java
  • [swustoj 771] 奶牛农场

    奶牛农场
    Description

    将军有一个用栅栏围成的矩形农场和一只奶牛,在农场的一个角落放有一只矩形的箱子,有一天将军要出门,他就把奶牛用一根绳子套牢,然后将绳子的另一端绑到了那个箱子不靠栅栏的角上,现在给定箱子的长和宽,绳子的长度,你的问题是计算奶牛能够到达的面积。

     
    Input

    有多组测试数据。 每一组数据为一行,三个整数,L(0<=L<=500),M,N(1<=M,N<=500),分别表示绳子的长度,箱子的两边长度。假设农场无限大。

     
    Output

    对于每一组测试数据,输出奶牛能够到达的面积,保留两位小数。

    Sample Input

    1 1 1

    Sample Output

    2.36

    晕、最开始理解错了、

    简单题、画下图就知道了。

    对于其中一边,分两种情况讨论

    (1) 

    (2) 

    #include<iostream>
    #include<algorithm>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    using namespace std;
    #define PI acos(-1.0)
    
    double r,a,b;
    double getArea(double n) 
    {
        if(r<=n){
            double angel=0.75*PI;
            return r*r*angel/2;
        }
        else{
            double angel1=acos(n/r);
            double angel2=0.75*PI-angel1;
            return r*r*angel2/2+0.5*n*r*sin(angel1);
        }
    }
    int main()
    {
        while(scanf("%lf%lf%lf",&r,&a,&b)!=EOF)
        {
            printf("%.2f
    ",getArea(a)+getArea(b));
        }
        return 0;
    }
  • 相关阅读:
    广义表的创建和遍历
    dev c++ Boost库的安装
    NAT模式
    vmware桥接模式
    smb与samba
    利用Linux的Samba服务模拟NT域
    使用samba进行共享文件操作步骤
    安装chrome
    使用虚拟机上网第二步
    TCP协议三次握手过程分析
  • 原文地址:https://www.cnblogs.com/hate13/p/4598370.html
Copyright © 2011-2022 走看看