Codeforces Round #532(Div. 2) C.NN and the Optical IIIusion

链接:https://codeforces.com/contest/1100/problem/C

题意:

一个圆球外面由其他圆球包裹,两两相连。

给出n,r。

n为外面圆球数量,r为内部圆球半径。

求外面圆半径R。

思路:

将内圆和外面两个相邻圆圆心连线,成三角形,将内圆圆心与内圆与外圆交点连线。

可得出公式。

代码:

#include <bits/stdc++.h>
#define PI 3.1415926535
using namespace std;

int main()
{
    int n;
    double r;
    cin >> n >> r;
    double len = 2.0*(r * sin((360.0/(2*n))/180.0 * PI));
    double R = (len*r)/(2*r-len);
    printf("%.7f",R);

    return 0;
}

  

posted @ 2019-01-14 12:25  YDDDD  阅读(356)  评论(0编辑  收藏  举报