Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 

Убить Вову

(Время: 1 сек. Память: 16 Мб Сложность: 50%)

Таня хочет убить Вову. Разумеется, виртуально. Сначала Вова выбирает одну из n тактик защиты, потом Таня, не зная, какую тактику выбрал Вова, атакует несколько раз, каждый раз выбирая одну из m тактик нападения. Для каждой тактики защиты известно, от каких тактик нападения она защищает. Помогите Тане узнать, за сколько атак она может гарантированно убить Вову и какие тактики нападения ей нужно для этого использовать.

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

Первая строка входного файла INPUT.TXT содержит два числа - n и m. (1 ≤ n, m ≤ 20). Далее идут n строк по m чисел, j-е число в i-ой строке равно 1, если тактика защиты i спасает от тактики нападения j и равно 0 в противном случае.

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

Выведите в выходной файл OUTPUT.TXT число k - минимальное число атак, за которое можно гарантированно убить Вову и далее k чисел - номера стратегий нападения, которые нужно использовать. Если Вову убить невозможно, выведите строку «Impossible».

Примеры

INPUT.TXTOUTPUT.TXT
14 5
1 0 0 0 0
1 1 1 0 1
1 0 1 1 1
1 1 0 1 0
3
2 4 5
23 3
1 1 1
0 1 0
0 0 1
Impossible

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

[Обсуждение] [Все попытки] [Лучшие попытки]


Красноярский краевой Дворец пионеров, (c)2006 - 2024, ИНН 246305493507, E-mail: admin@acmp.ru



индукционная печь для плавки металла своими руками