Трикутна Сітка#785

Трикутна Сітка

4 секунди
64 мегабайти
Складна

На декартовій площині розташована нескінченна сітка, що складається з рівнобедрених трикутників, з таким дизайном:

Кожен трикутник у цій сітці має вершини на перетинах ліній сітки, і всередині нього немає інших трикутників.

Вам дано дві точки та на декартовій площині. Потрібно визначити, скільки одиничних трикутників перетинає відрізок, що з'єднує ці точки. Відрізок перетинає багатокутник, якщо існує хоча б одна точка відрізка, що лежить всередині багатокутника (не враховуючи його межі).

Зверніть увагу, що в прикладі відрізок перетинає рівно шість одиничних трикутників.

Вхідні дані

Вхідні дані складаються з кількох тестових випадків. Кожен випадок описується рядком із шести цілих чисел , , x_1, y_1, x_2 та y_2 (1 \le B \le 200, 2 \le H \le 200, -1000 \le x_1, y_1, x_2, y_2 \le 1000), де:

  • — довжина основи всіх рівнобедрених одиничних трикутників сітки.

  • — висота всіх рівнобедрених одиничних трикутників сітки.

  • (x_1, y_1) — координати точки , яка є одним кінцем відрізка.

  • (x_2, y_2) — координати точки , яка є іншим кінцем відрізка.

Ви можете припустити, що ні , ні не лежать на межі жодного одиничного трикутника, і що P \neq Q.

Кінець вхідних даних позначається рядком "0 0 0 0 0 0".

Вихідні дані

Для кожного тестового випадку у вхідних даних виведіть один рядок, що містить кількість одиничних трикутників на сітці, які перетинає відрізок.

Приклади

Приклад 1

Loading
Loading