Олимпиадный тренинг

Задача . C. Термостат


Влад пришёл домой и обнаружил, что кто-то перенастроил старый термостат на температуру \(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, иначе выведите минимальное количество действий.

Примечание

В первом примере термостат уже настроен правильно.

Во втором примере можно добиться нужной температуры следующим образом: \(4 \rightarrow 10 \rightarrow 5\).

В третьем примере можно добиться нужной температуры следующим образом: \(3 \rightarrow 8 \rightarrow 2 \rightarrow 7\).

В четвёртом тесте невозможно сделать какую-либо перенастройку.


Примеры
Входные данныеВыходные данные
1 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
0
2
3
-1
1
-1
3
1
3
-1

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя