eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Ориентирование

Ориентирование

Лукашу очень нравится спортивное ориентирование - спорт, который требует нахождения контрольных точек на пересеченной местности. Чтобы развлечь участников NWERC, Лукаш хочет организовать соревнование по ориентированию. Тем не менее, было бы слишком сурово проводить соревнование для участников на открытом воздухе в эту холодную шведскую ноябрьскую погоду, поэтому он решил провести гонки в крытом помещении - в здании B Университета Линчёпинга.

Лукаш уже определился с местонахождением контрольных точек. Он также принял решение о точной продолжительности гонки, поэтому остается только решить, в каком порядке следует посещать контрольные точки чтобы общая продолжительность гонки была такой, какой он пожелает. Поскольку это не всегда возможно, он просит Вас написать программу, которая поможет ему.

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

Состоит из:

  • строка из двух чисел n (2n14) и L (1L1015) - количество контрольных точек и желаемая длина гонок;

  • n строк по n целых чисел. j-ое число в i-ой строке dij указывает на расстояние между контрольными точками i и j (1dijL для ij и dii = 0). Для всех 1i, j, kn имеет место dij = dji и dijdik + dkj.

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

Выведите "possible", если есть возможность посетить все контрольные точки один раз в некотором порядке вернувшись к первой так, чтобы общее пройденное расстояние равнялось в точности L. Иначе выведите "impossible".

Лимит времени 5 секунд
Лимит использования памяти 128 MiB
Входные данные #1
4 10
0 3 2 1
3 0 1 3
2 1 0 2
1 3 2 0
Выходные данные #1
possible
Входные данные #2
3 5
0 1 2
1 0 3
2 3 0
Выходные данные #2
impossible
Источник 2014 ACM North Western European Regional Contest (NWERC), Ноябрь 30, Задача I