Крива дракона Junior#2866

Крива дракона Junior

1 секунда
64 мегабайти
Дуже легка

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

Оскільки лівий дракон порядку починається з лівого дракона порядку n-1, лівий дракон нескінченного порядку визначений коректно. Ця послідовність відрізків називається драконовою кривою.

Побудуємо драконові криві, починаючи з точки у всіх чотирьох напрямках. Згідно з теоремою, доведеною Д. Кнутом, ці криві не перетинаються (крім вершин) і повністю покривають цілочислову ґратку на площині. У цій задачі вам потрібно перевірити цю теорему: для заданого одиничного ґраткового відрізка визначити, до якої з чотирьох драконових кривих він належить.

Вхідні дані

Єдиний рядок вхідних даних містить цілі числа: координати одного кінця відрізка, паралельного одній із координатних осей, та координати іншого кінця.

Усі числа не перевищують 10^9 за модулем. Відстань між точками дорівнює .

Вихідні дані

У першому рядку виведіть номер драконової кривої, до якої належить цей відрізок ( — дракон у додатному напрямку , — у додатному напрямку , — у від'ємному напрямку , — у від'ємному напрямку ). У другому рядку виведіть індекс цього відрізка у відповідній драконовій кривій. Гарантується, що це число не перевищує 10^7.

Приклади

Приклад 1

Loading
Loading