#include <iostream>
#include <cstring>
#include <iomanip>
#include <math.h>
using namespace std;
double fabs(double a)
{
return (a >= 0) ? a : (-a);
}
double Fun(int x, int y)
{
int n = x + y;
double s = 0.0;
s += n * (n-1) * sqrt(2) / 2;//计算到第一个点,并且中间没有点的距离
for(int i = n; i > 0; --i)
s += sqrt(i*i + (i-1)*(i-1));//计算到第一个点中间有点的距离
s += (n-y)*sqrt(2);
return s;
}
int main()
{
int T;
cin>>T;
while(T--)
{
double sum = 0.0;
int x1, y1, x2, y2;
cin>>x1>>y1>>x2>>y2;
sum = fabs(Fun(x1, y1) - Fun(x2, y2));
cout<<fixed<<setprecision(3)<<sum<<endl;
}
return 0;
}
hdu 2073
最新推荐文章于 2019-08-18 15:56:12 发布