zoukankan      html  css  js  c++  java
  • 喵哈哈村的几何大师╰☆莣メ誋こ月

    喵哈哈村的几何大师╰☆莣メ誋こ月

    Time Limit:1s Memory Limit:256MByte

    Submissions:269Solved:57

    DESCRIPTION

    ╰☆莣メ誋こ月是月大叔的ID,他是一个掌握着429种几何画法的的几何大师,最擅长的技能就是搞事,今天他又要开始搞事了。

    给你一个等腰三角形,其中A,B,C,D角已知,求E角的角度。

    INPUT
    输入第一行包含一个正整数t(1t100)t(1≤t≤100) ,表示有t组数据 对于每组数据: 第二行四个整数,A,B,C,D表示度数。满足A+B=C+D且A+B<90
    OUTPUT
    对于每组测试数据的询问,输出E角的度数,请保留两位小数。
    SAMPLE INPUT
    1 10 70 20 60
    SAMPLE OUTPUT
    20.00
    分析:应用正弦余弦定理,如图所示暴力求出各边;
       最后余弦定理求角,考察高中数学知识,233;
       
    代码:
    #include <iostream>
    #include <cstdio>
    #include <cstdlib>
    #include <cmath>
    #include <algorithm>
    #include <climits>
    #include <cstring>
    #include <string>
    #include <set>
    #include <bitset>
    #include <map>
    #include <queue>
    #include <stack>
    #include <vector>
    #include <cassert>
    #include <ctime>
    #define rep(i,m,n) for(i=m;i<=n;i++)
    #define mod 1000000007
    #define inf 0x3f3f3f3f
    #define vi vector<int>
    #define pb push_back
    #define mp make_pair
    #define fi first
    #define se second
    #define ll long long
    #define pi acos(-1.0)
    #define pii pair<int,int>
    #define sys system("pause")
    #define ls rt<<1
    #define rs rt<<1|1
    const int maxn=1e5+10;
    const int N=2e5+10;
    using namespace std;
    ll gcd(ll p,ll q){return q==0?p:gcd(q,p%q);}
    ll qpow(ll p,ll q){ll f=1;while(q){if(q&1)f=f*p%mod;p=p*p%mod;q>>=1;}return f;}
    int n,m,k,t;
    double ret[9];
    int main()
    {
        int i,j;
        scanf("%d",&t);
        while(t--)
        {
            double a,b,c,d;
            scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
            a=a*pi/180,b=b*pi/180,c=c*pi/180,d=d*pi/180;
            ret[1]=1.0/sin(pi-a-b-d)*sin(d);
            ret[2]=1.0/sin(pi-c-d-b)*sin(b);
            ret[3]=1.0/sin(pi-b-d)*sin(d);
            ret[4]=1.0/sin(pi-b-d)*sin(b);
            ret[5]=sqrt(ret[1]*ret[1]+ret[3]*ret[3]-2*ret[1]*ret[3]*cos(a));
            ret[6]=sqrt(ret[2]*ret[2]+ret[4]*ret[4]-2*ret[2]*ret[4]*cos(c));
            ret[7]=sqrt(ret[1]*ret[1]+(ret[3]+ret[6])*(ret[3]+ret[6])-2*ret[1]*(ret[3]+ret[6])*cos(a));
            printf("%.2f
    ",180.0/pi*acos((ret[6]*ret[6]+ret[7]*ret[7]-ret[5]*ret[5])/(2*ret[6]*ret[7])));
        }
        return 0;
    }
  • 相关阅读:
    约数的问题
    广度搜索基本逻辑
    奇葩概念
    一枚前端UI组件库 KUI for React
    一枚前端UI组件库 KUI for Vue
    跨域的常见问题和解决方案
    Comet,SSE,WebSocket前后端的实现
    web渐进式应用PWA
    IIS 部署node
    javascript 时间戳
  • 原文地址:https://www.cnblogs.com/dyzll/p/6921943.html
Copyright © 2011-2022 走看看