CF1282A Temporarily unavailable
题目描述
Polycarp 生活在坐标轴 $Ox$ 上,他需要从 $x=a$ 点移动到 $x=b$ 点。他以每分钟一单位距离的速度做匀速直线运动。
在坐标轴 $Ox$ 上的 $x=c$ 处有一个移动运营商的基站。已知该基站的覆盖半径为 $r$。因此,如果 Polycarp 距离 $x=c$ 的距离小于等于 $r$,他就在网络覆盖区,否则不在。基站可以位于 Polycarp 的路径上,也可以在路径之外。
请输出 Polycarp 以匀速直线运动从 $x=a$ 到 $x=b$ 的过程中,不在网络覆盖区的时间(以分钟为单位)。他的速度为每分钟一单位距离。
输入格式
第一行包含一个正整数 $t$($1 \le t \le 1000$),表示测试用例的数量。接下来的 $t$ 行,每行包含四个整数 $a$、$b$、$c$ 和 $r$($-10^8 \le a, b, c \le 10^8$,$0 \le r \le 10^8$),分别表示起点、终点、基站位置和覆盖半径。
$a$、$b$、$c$ 中的任意两个数甚至全部都可以相等。基站可以位于 Polycarp 的路径上,也可以在路径之外。
输出格式
输出 $t$ 个整数,按输入顺序分别表示每个测试用例中 Polycarp 在移动过程中不在网络覆盖区的分钟数。
说明/提示
下图展示了第一个测试用例的情况。

Polycarp 从 $1$ 走到 $10$。黄色区域表示以 $7$ 为中心、半径为 $1$ 的基站覆盖区。绿色区域表示 Polycarp 不在覆盖区的部分路径。
由 ChatGPT 4.1 翻译