http://acm.hdu.edu.cn/showproblem.php?pid=1115
代码:
#include <iostream>
#include <set>
#include <string>
#include <cstdio>
#include <string.h>
#include <algorithm>
#include <vector>
using namespace std;
double x0, y0, x1, y1, x2, y2;
double s0, s1, s2;
double x, y;
int n;
int main()
{
int t;
scanf("%d",&t);
while (t--)
{
scanf ("%d",&n);
s0 = s1 = s2 = 0;
cin >> x0 >> y0 >> x1 >> y1;
for (int i = 2;i < n;i++)
{
cin >> x2 >> y2;
x = (x0 + x1 + x2);
y = (y0 + y1 + y2);
double tmp = (x0*y1 + x1 * y2 + x2*y0 - x1*y0 - x2 * y1 - x0*y2);
s0 += tmp;
s1 += x*tmp;
s2 += y*tmp;
x1 = x2;
y1 = y2;
}
//cout<<s0<<endl;
if (s0 == 0)
printf("0.00 0.00\n");
else
printf("%.2lf %.2lf\n", s1 / s0 / 3, s2 / s0 / 3);
}
return 0;
}