LEM1 - COIN

Tác giả: hieult

Ngôn ngữ: C++

#include <stdio.h>
//#include <conio.h>
#include <math.h>
#define pi 3.1415926535898
long long a[10003],n;
double Bcos(double t)
{
double T=0;
for(int i=1;i<=n;i++)
  T=T+acos(1-2*a[i]*a[i+1]/((a[i]+t)*(a[i+1]+t)));
return T;
}
main()
{
//freopen("LEM1.in","r",stdin);
scanf("%lld",&n);
for(int i=1;i<=n;i++)  
  scanf("%lld",&a[i]);
  a[n+1] = a[1];
double u = 0.01,v = 1000000000;
while(v-u>0.0000001)
{
     double r = (u+v)/2;
     if(Bcos(r)<2*pi)
        v=r;
     else u = r;
}
printf("%.3lf",u); 
//getch();
}      
      
  
  
  

Download