Convex
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1080 Accepted Submission(s): 702
As you know we can get N segments after linking the origin point and the points on the convex. We can also get N angles between each pair of the neighbor segments.
Now give you the data about the angle, please calculate the area of the convex
The first line contains two integer N and D indicating the number of the points and their distance to origin. (3 <= N <= 10, 1 <= D <= 10)
The next lines contain N integers indicating the angles. The sum of the N numbers is always 360.
4 1 90 90 90 90 6 1 60 60 60 60 60 60
2.000 2.598
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
const double PI = acos(-1.0);
int main()
{
int n,d;
while(~scanf("%d %d",&n,&d)){
double ans=0;
for(int i=1;i<=n;i++){
double a;scanf("%lf",&a);
ans+=1.0/2.0*sin(a/180*PI)*1.0*d*d;
}
printf("%.3lf\n",ans);
}
return 0;
}
329



被折叠的 条评论
为什么被折叠?



