#include "iostream"
#include "iomanip"
using namespace std;
struct Info
{
int X;
int Y;
};
double area(double a, double b, double c, double d)
{
double differX = c - a;
double differY;
double mult1 = 0, mult2 = 0;
if (b > d)
{
mult1 = differX * d;
differY = b - d;
}
else
{
mult1 = differX * b;
differY = d - b;
}
mult2 = differX * differY / 2;
return (mult1 + mult2);
}
int main()
{
int T;
cin >> T;
while (T--)
{
int N;
cin >> N;
Info *a = new Info[N];
for (int i = 0; i < N; i++)
cin >> a[i].X >> a[i].Y;
double areaSum = 0;
for (int i = 0; i < N-1; i++)
areaSum += area(a[i].X, a[i].Y, a[i+1].X, a[i+1].Y);
/* cout.setf(ios_base::showbase);
cout.setf(ios_base::fixed);
cout.setf(ios_base::floatfield);
cout.setf(ios_base::showpoint);
cout.precision(2);
cout << setiosflags(ios::showpoint) << areaSum << endl;*/
cout << fixed << setprecision(1) << areaSum << endl;
}
}
sicily 1741
最新推荐文章于 2017-12-20 22:06:30 发布