HDU - 5979 Convex —— 幾何計算
阿新 • • 發佈:2018-11-12
題意:
多邊形每個頂點到原點的距離都是d,已知兩兩相鄰線段的夾角,問多邊形的面積
思路:
兩兩相鄰線段可以形成一個等腰三角形,知道頂角的度數,可以求面積
多邊形的面積就是每個小等腰三角形的面積之和
#include <iostream> #include <cstdio> #include <cmath> #include <vector> #include <map> #include <stack> #include <set> #include <cstring> #include <algorithm> using namespace std; #define ll long long #define max_ 1000 #define mod 1000000007 int n; double d; int main(int argc, char const *argv[]) { while(scanf("%d%lf",&n,&d)!=EOF) { double ans=0; for(int i=1;i<=n;i++) { double ang; scanf("%lf",&ang); ans+=d*(d*sin(ang/180*acos(-1))); } printf("%.3f\n",ans*0.5); } return 0; }