hdu 2036 c语言

我也是从别的大佬那学的算法

计算几何系列,先来一道简单的。。。

全裸的计算几何题目,求多边形面积,非常基础的题。

只要记住这个公式:


如果逆时针给出点坐标,值为正,

如果顺时针给出点坐标,值为负。

当i=n-1  i+1就是n所代表的点就是第一个点

代码如下:


#include
#include
int main()
{
    int n,a[1000],b[1000];
    while(scanf("%d",&n)!=EOF&&n)
    {
        double sum=0;
        for(int i=0;i         {
            scanf("%d",&a[i]);
            scanf("%d",&b[i]);
        }
        for(int i=0;i         sum+=(a[i]*b[(i+1)%n]-a[(i+1)%n]*b[i])/2.0;
        printf("%.1lf\n",fabs(sum));
    }
    return 0;

}


你可能感兴趣的:(#,水题)