hdu 2036 改革春风吹满地

来源:互联网 发布:上海税友有哪些软件 编辑:程序博客网 时间:2024/04/29 22:11
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2036

多边形面积公式S=0.5 *abs ( (x0*y1-x1*y0) + (x1*y2-x2*y1) + ... +(Xn-1*y0-x0*Yn-1))最后一个要注意加上

只有各点是逆时针排列才能这样做

#include<iostream>
#include<stdio.h>
#include<cmath>
using namespace std;
int main()
{
    intx[100],y[100];
    int n;
    int i;
    doublesum;
   while(cin>>n)
    {
       if(!n)break;
       sum=0;
      scanf("%d%d",&x[0],&y[0]);
      for(i=1;i<n;i++)
       {
         scanf("%d%d",&x[i],&y[i]);
         sum+=(x[i-1]*y[i]-x[i]*y[i-1]);
       }
      sum+=(x[n-1]*y[0]-x[0]*y[n-1]);
      
      printf("%.1lf\n",fabs(sum*1.0/2));
    }
    return0;
}

0 0
原创粉丝点击