关闭

XTU 1237 Magic Triangle(几何)

标签: ACMXTU
231人阅读 评论(0) 收藏 举报
分类:

Magic Triangle

Accepted : 98   Submit : 232
Time Limit : 1000 MS   Memory Limit : 65536 KB

Magic Triangle

Problem Description:

Huangriq is a respectful acmer in ACM team of XTU because he brought the best place in regional contest in history of XTU.

Huangriq works in a big company in Guangzhou now, all things goes well but the mosquitos are too disturbing. Mosquito net and mosquito-repellent incense are useless for this mosquito city.

And finally he decides to use magic to kill them. He make a magic regular triangle as the picture shows. While the most proper position to launch magic is not always the center of circle. In order to make everything smoothly, Huangriq needs to get the value of . And he already get two of them, can you help him to figure out the rest one?

Input

The first line contains a integer T(no more than 10000), which indicates the number of test cases. In the following T lines, each line contains two integers a and b () indicating the two angle Huangriq has already got.

Output

For each test case, output the rest angle's value with two digits after a decimal point in one line.

Sample Input

1
30 30

Sample Output

30.00

题意:一个圆里有一个正△ABC 给你其中两个角求第三个角
思路:写出三个小三角形的正弦定理即可求出公式,这里不予推理了。注意库函数里的sin()填的是弧度不是角度
代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
#define pi 3.1415926
int main()
{
    int T;
    double x,y,z;
    double q=pi/180;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%lf %lf",&x,&y);
        z=(sin(x*q)*sin(y*q))/(sin((60.0-x)*q)*sin((60.0-y)*q));
        z+=1.0/2.0;
        z=z*2.0/(sqrt(3.0));
        z=1.0/z;
        z=atan(z);
        z=z*180/pi;
        printf("%.2lf\n",z);
    }
    return 0;
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:102538次
    • 积分:4842
    • 等级:
    • 排名:第6192名
    • 原创:396篇
    • 转载:11篇
    • 译文:0篇
    • 评论:21条
    最新评论