POJ 1799 Yeehaa!(计算几何)

Description
给出大圆半径以及其内的小圆个数,求小圆的半径,小圆在大圆中如图放置
POJ 1799 Yeehaa!(计算几何)_第1张图片
Input
多组用例,第一行为用例组数t,每组用例包含一个浮点数表示大圆半径和一个整数表示小圆个数
Output
对于每组用例,输出小圆半径,保留三位小数,每组输出后跟一空行
Sample Input
4
4.0 6
4.0 17
3.14159 100
42 2
Sample Output
Scenario #1:
1.333

Scenario #2:
0.621

Scenario #3:
0.096

Scenario #4:
21.000

Solution
大圆中心A与小圆中心B相连,之后与两个小圆交点相连得到一个垂直三角形,由此可得出关系
Code

#include<stdio.h>
#include<math.h>
#define pi acos((double)-1) 
int main()
{
    int k,n;
    double r;
    scanf("%d",&k);
    for(int i=1;i<=k;i++)
    {
        scanf("%lf%d",&r,&n);
        printf("Scenario #%d:\n",i);
        printf("%.3lf\n\n",(r*sin(pi/n))/(1+sin(pi/n))); 
    }
    return 0;
}

你可能感兴趣的:(POJ 1799 Yeehaa!(计算几何))