#include<stdio.h>
#include<math.h>
int main() {
int
i,j,k,n,m,t;
double
a[220];
a[0]=0;
for(
i=1;i<=210;i++)
a[i]=a[i-1]+sqrt(1.0*i*i+1.0*(i-1)*(i-1))+sqrt(1.0*i*i*2);
int
x1,y1,x2,y2;
scanf("%d",&t);
while(
t--) {
scanf("%d%d%d%d",&x1,&y1,&x2,&y2); double r,y;
if(
x1==0&&y1==0)
r=0;
else {

m=x1+y1-1;
r=a[m]+sqrt(1.0*m*m+1.0*(m+1)*(m+1))+sqrt(1.0*x1*x1+1.0*(m+1-y1)*(m+1-y1));
}
if(
x2==0&&y2==0)
y=0;
else {

m=x2+y2-1;
y=a[m]+sqrt(1.0*m*m+1.0*(m+1)*(m+1))+sqrt(1.0*x2*x2+1.0*(m+1-y2)*(m+1-y2));
}

printf("%.3f\n",fabs(y-r));
}
return
0;
}

最新文章

  1. 【转】MySQL索引背后的数据结构及算法原理
  2. PowerBuilder 简介及应用 - 数据库系统原理
  3. 写好Hive 程序的若干优化技巧和实际案例
  4. 【leetcode】Next Permutation
  5. asp.net Excel数据导入到数据库中
  6. 内部通信服务Factory(WCF)
  7. JS模态窗口返回值兼容问题解决方案
  8. MFC使用ShowWindow(SW_MAXIMIZE)任务栏消失的处理
  9. Unity-视图
  10. sublime text 3.0新版本注册码
  11. mysql分组查询前n条数据
  12. Java基础(五)-Java序列化与反序列化
  13. asp.net core Csc任务不支持SharedCompilationId参数,请确认改参数存在于此任务中,并且是可设置的公共实例属性
  14. 20175208 《Java程序设计》第七周学习总结
  15. mysql的简单安装方法
  16. sqlserver修改计算机名称。
  17. 【Codeforces Round 725】Canada Cup 2016
  18. 数据仓库与ODS
  19. MVC页面和表单
  20. Tomcat源码分析——Session管理分析(下)

热门文章

  1. oracle 触发器,序列,索引
  2. 获得select被选中option的value和text
  3. SQL Server 2008还原数据库的具体方法
  4. 初识Vivado
  5. 原创:shell两个整数的比较 思想版
  6. 北京区域赛I题,Uva7676,A Boring Problem,前缀和差分
  7. linux AC的应用详解
  8. python基础一 day2 字符串操作
  9. 转--C#编程总结
  10. JavaEE-03 JSP数据交互02