ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

Осеннее первенство школьников 2008

Описание     Задачи     Отправить на проверку     Состояние проверки     Результаты
Соревнование завершено

D. Одномерный лабиринт

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
В одномерном государстве жили одномерные люди. И всё остальное в этом государстве было тоже одномерное. Всё в их одномерном мире было просто и понятно: всего одна ось координат и всего два направления движения — вперёд и назад. Но даже в одномерном мире есть проблемы. Например, как найти выход из лабиринта? Это нам одномерный лабиринт кажется по меньшей мере странным, а для одномерных людей поиск выхода из лабиринта — очень сложная и насущная задача. Решают её одномерные люди следующим образом.
Одномерный человек выбирает направление движения: вперёд (в сторону увеличения координаты) или назад (в сторону её уменьшения) и идёт в выбранном направлении. Если он находит точку выхода, то сразу покидает лабиринт. Если же он наталкивается на препятствие, то разворачивается и идёт в обратном направлении.
Почувствуйте, как нелегко жить в одномерном мире: попробуйте реализовать функцию, определяющую расстояние, которое пройдёт одномерный человек, прежде чем найдёт выход, в зависимости от выбора начального направления движения.

Исходные данные

В первой строке через пробел записаны два целых числа n и x — количество препятствий и координата точки выхода, соответственно (0 ≤ n ≤ 100). Одномерный человек располагается в начале координат. Во второй строке через пробел записаны n различных целых чисел — координаты препятствий. Все координаты, включая x, не равны нулю и не превосходят по модулю 1000. Гарантируется, что ни одно препятствие не расположено в точке выхода. Гарантируется, что вне зависимости от выбора начального направления движения одномерный житель рано или поздно найдёт выход или натолкнётся на препятствие.

Результат

Выведите через пробел два числа — расстояние, которое пройдёт одномерный человек до выхода из лабиринта, если сначала пойдёт вперёд и если сначала он пойдёт назад, соответственно. Если из-за препятствий дойти до выхода невозможно, выведите «Impossible».

Примеры

исходные данныерезультат
3 -2
-10 -4 2
6 2
3 -2
10 -1 2
Impossible
Автор задачи: Даниил Айзенштейн
Источник задачи: Осеннее первенство школьников 2008
Чтобы отправить решение этой задачи на проверку перейдите в Архив задач: 1642. Одномерный лабиринт