pku 1385 Lifting the Stone

来源:互联网 发布:昆山市宏观数据库 编辑:程序博客网 时间:2024/05/20 06:52
#include<stdio.h>#include<math.h>#define eps 1e-10typedef struct {int x;int y;} Point;Point point[1000005];inline double multily(Point A,Point B){       return A.x * B.y - A.y * B.x;}int main(){    int i,j,N,T=9;    double t,cx,cy, area,sumx,sumy;    scanf("%d",&T);    while(T--)    {        scanf("%d",&N);        for(i=0;i<N;i++) scanf("%d%d",&point[i].x,&point[i].y);        area=sumx=sumy=0;        for(i=0;i<N;i++)        {             j=(i+1)%N;//相邻点              t=multily(point[i],point[j]);             area+=t;             sumx+=(point[i].x+point[j].x)*t;             sumy+=(point[i].y+point[j].y)*t;                  }        if(fabs(area)<eps)cx=cy=0;        else{        cx=sumx/3.0/area;        cy=sumy/3.0/area;        }        printf("%.2lf %.2lf/n",cx,cy);                  }    return 0;}
原创粉丝点击