#YDRB011B. 空间跳跃 (whynotjump)

空间跳跃 (whynotjump)

题目描述

在公元 3446 年,整个猎户旋臂可以被视为一条横跨 (,+)(-\infty,+\infty) 的数轴。

你加入了银河系猎户旋臂外卖团,需要完成 TT 个订单。对于每一个订单,你都需要驾驶宇宙飞船,从坐标 xx 处出发,将外卖送到坐标 yy 处。

在运送每一单外卖时,宇宙中都会随机开启一个虫洞,其两端分别位于坐标 ppqq。通过这个虫洞,你可以:

  • 瞬间从 pp 传送到 qq
  • 瞬间从 qq 传送到 pp

并且不需要经过 ppqq 之间的那段距离。

注意:

  • 这个虫洞只在当前订单运送期间存在
  • 不同订单之间的虫洞互不影响,也不能共用

对于每一个订单,你需要求出:宇宙飞船实际行驶的最短距离是多少


输入格式

从文件 whynotjump.in 中读入。

第一行一个整数 TT,表示订单数量。

接下来 TT 行,每行四个整数 x,y,p,qx,y,p,q,分别表示订单起点、终点坐标以及虫洞的两端坐标。


输出格式

输出到文件 whynotjump.out 中。

TT 行,每行一个整数,表示对应订单中宇宙飞船运送的最短距离。


输入输出样例

输入样例 1

3
4 10 8 2
89 84 15 78
41 94 92 82

输出样例 1

4
5
43

样例 1 说明

对于第一组数据:

  • 直接从 441010,距离为 104=6|10-4|=6
  • 也可以从 44 开到 22,距离为 22,再通过虫洞瞬间到达 88,最后从 88 开到 1010,距离为 22

因此最短距离为:

42+108=2+2=4 |4-2|+|10-8|=2+2=4

对于第二组数据:

  • 直接走的距离为 8984=5|89-84|=5
  • 使用虫洞并不能更优。

所以答案为 55

对于第三组数据:

  • 直接走的距离为 4194=53|41-94|=53
  • 若先从 41418282,距离为 4141,通过虫洞到 9292,再从 92929494,距离为 22
  • 总距离为 41+2=4341+2=43

因此答案为 4343

样例 2

见下发压缩包中 whynotjump2.in\textbf{\textit{whynotjump2.in}}whynotjump2.ans\textbf{\textit{whynotjump2.ans}}