#include<stdio.h>
struct point
{
double x,y;
};
double Area(struct point p0,struct point p1,struct point p2)
{
double area=0;
area=p0.x*p1.y+p1.x*p2.y+p2.x*p0.y-p1.x*p0.y-p2.x*p1.y-p0.x*p2.y;
return area/2;
}
int main()
{
struct point p0,p1,p2;
int t,n,i;
double s1,s2,sum,area;
scanf("%d",&t);
while(t--)
{
s1=s2=sum=0;
scanf("%d",&n);
scanf("%lf%lf",&p0.x,&p0.y);
scanf("%lf%lf",&p1.x,&p1.y);
for(i=2;i<n;i++)
{
scanf("%lf%lf",&p2.x,&p2.y);
area=Area(p0,p1,p2);
sum=sum+area;
s1+=(p0.x+p1.x+p2.x)*area;
s2+=(p0.y+p1.y+p2.y)*area;
p1=p2;
}
printf("%.2lf %.2lf\n",s1/sum/3,s2/sum/3);
}
return 0;
}
hdu 1115
最新推荐文章于 2021-02-23 11:23:31 发布