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

Задача . B. Клетки


Задача

Темы: математика *1800

Дано бесконечное клетчатое поле. Требуется попасть из клетки (x1; y1) в клетку (x2; y2), но не обязательно по кратчайшему пути. Двигаться по клеткам поля можно в четырех направлениях. То есть, находясь в некоторой клетке, можно перейти в любую соседнюю по стороне.

Клетка (x; y) считается плохой, если выполняется хотя бы одно из двух условий:

  • |x + y| ≡ 0 (mod 2a),
  • |x - y| ≡ 0 (mod 2b).

Требуется узнать, какое наименьшее количество плохих клеток придется посетить по пути из (x1; y1) в (x2; y2).

Входные данные

В единственной строке заданы целые числа a, b, x1, y1, x2 и y2 — параметры плохих клеток, координаты начальной и конечной клеток соответственно (2 ≤ a, b ≤ 109 и |x1|,|y1|,|x2|,|y2| ≤ 109). Гарантируется, что начальная и конечная клетки не являются плохими.

Выходные данные

Выведите одно число — наименьшее количество плохих клеток, которые придется посетить чтобы попасть из клетки (x1; y1) в клетку (x2; y2).

Примечание

В третьем примере один из возможных путей: (3;-1)->(3;0)->(3;1)->(3;2)->(4;2)->(4;3)->(4;4)->(4;5)->(4;6)->(4;7)->(3;7). Клетки (3;1) и (4;4) плохие.


Примеры
Входные данныеВыходные данные
1 2 2 1 0 0 1
1
2 2 2 10 11 0 1
5
3 2 4 3 -1 3 7
2

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

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