编程题
### 问题描述 小桥回家后发现,有人把旧恒温器的温度调成了 $a$ 度。 该恒温器只能调节在 $l$ 度到 $r$ 度之间的温度,并且每次调节时温度变化不能小于 $x$ 度。具体来说,如果当前温度为 $a$ 度,那么只有当要调节的温度 $b$ 满足 $|a-b| \ge x$ 且 $l \le b \le r$ 时,才能调节成功。 现在,给定 $l$、$r$、$x$、$a$ 和目标温度 $b$,请计算出调节恒温器从温度 $a$ 调节到温度 $b$ 所需的最小操作次数。如果无法调节到目标温度,则输出 $-1$。 ### 输入格式 第一行包含一个整数 $t$,表示测试据组数。 接下来 $2t$ 行,每两行描述一组测试数据,格式如下: 第一行包含三个整数 $l$、$r$、$x$,表示恒温器可调节的温度范围和最小温度变化。 第二行包含两个整数 $a$ 和 $b$,表示初始温度和目标温度。 ### 输出格式 输出 $t$ 行,每行一个整数,表示将恒温器从温度 $a$ 调节到温度 $b$ 所需的最小操作次数。如果无法调节到目标温度,则输出 -1。 ### 样例输入 ```txt 10 3 5 6 3 3 0 15 5 4 5 0 10 5 3 7 3 5 6 3 4 -10 10 11 -5 6 -3 3 4 1 0 -5 10 8 9 2 1 5 1 2 5 -1 4 3 0 2 -6 3 6 -1 -4 ``` ### 样例输出 ```txt 0 2 3 -1 1 -1 3 1 3 -1 ``` ### 样例说明 在样例的第一个测试用例中,恒温器已经被正确设置。 在样例的第二个测试用例中,你可以按照以下方式达到所需的温度:$4\rightarrow 10\rightarrow 5$。 在样例的第三个测试用例中,你可以按照以下方式达到所需的温度:$3\rightarrow 8\rightarrow 2\rightarrow 7$。 ### 评测数据规模 对于 $100$% 的评测数据,$1\leq t\leq 10^4,-10^9 \le l \le r \le 10^9, 1 \le x \le 10^9,l\leq a,b\leq r$。
查看答案
赣ICP备20007335号-2