Codeforces Round 834 (Div. 3) |
---|
Закончено |
Влад пришёл домой и обнаружил, что кто-то перенастроил старый термостат на температуру $$$a$$$.
Термостат можно настроить только на температуру от $$$l$$$ до $$$r$$$ включительно, при этом температура не может измениться меньше чем на $$$x$$$. Формально, за одно действие вы можете перенастроить термостат с температуры $$$a$$$ на температуру $$$b$$$, если $$$|a - b| \ge x$$$ и $$$l \le b \le r$$$.
Вам заданы $$$l$$$, $$$r$$$, $$$x$$$, $$$a$$$ и $$$b$$$. Найдите минимальное количество действий, необходимое чтобы из температуры $$$a$$$ получить температуру $$$b$$$, либо сообщите что это невозможно сделать.
Первая строка входных данных содержит единственное число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных в тесте.
Далее следуют описания наборов входных данных.
Первая строка каждого набора содержит по три целых числа $$$l$$$, $$$r$$$ и $$$x$$$ ($$$-10^9 \le l \le r \le 10^9$$$, $$$1 \le x \le 10^9$$$) — границы диапазона и минимальное изменение температуры.
Вторая строка каждого набора содержит по два целых числа $$$a$$$ и $$$b$$$ ($$$l \le a, b \le r$$$) — начальная и конечная температуры.
Выведите $$$t$$$ чисел, каждое из которых является ответом на соответствующий набор входных данных. Если невозможно добиться температуры $$$b$$$, выведите -1, иначе выведите минимальное количество действий.
103 5 63 30 15 54 50 10 53 73 5 63 4-10 10 11-5 6-3 3 41 0-5 10 89 21 5 12 5-1 4 30 2-6 3 6-1 -4
0 2 3 -1 1 -1 3 1 3 -1
В первом примере термостат уже настроен правильно.
Во втором примере можно добиться нужной температуры следующим образом: $$$4 \rightarrow 10 \rightarrow 5$$$.
В третьем примере можно добиться нужной температуры следующим образом: $$$3 \rightarrow 8 \rightarrow 2 \rightarrow 7$$$.
В четвёртом тесте невозможно сделать какую-либо перенастройку.
Название |
---|