eolymp
bolt
Try our new interface for solving problems
Məsələlər

Захват королевства

Захват королевства

В одном магическом королевстве есть \textbf{N} городов, каждые два из которых соединены дорогой. Эти дороги были построены в давние времена Светлыми и Темными силами, те дороги, которые были построены Светлыми силами вымощены белыми камнями, а те, которые построены Темными - черными. Поскольку магические чары охраняют дороги, ни одно доброе существо не может пройти по дороге, вымощенной черными камнями, и ни одно злое - по белой дороге. Когда-то давно люди решили избрать своих правителей и изгнали верховных магов из королевства. Однако недавно верховные маги Светлых и Темных сил договорились и решили вернуть королевство под свой контроль. Для этого они хотят направить в некоторые города королевства магов, которые возьмут эти и смежные города под свой контроль. Точнее, если светлый маг будет направлен в некоторый город, то он возьмет под свой контроль этот город и все города, которые напрямую соединены с ним белыми дорогами. Аналогично, черный маг помимо города, в который он направлен, будет контролировать все города, напрямую соединенные с ним черными дорогами. Для захвата королевства требуется установить контроль над всеми городами. Однако при разработке плана захвата обнаружилось две трудности. Во-первых, выяснилось, что маг согласен принять участие в операции только если все маги, которые будут направлены в королевство будут представлять ту же силу, что и он. То есть либо все участвующие в захвате маги должны быть светлыми, либо все они должны быть темными. Во-вторых, общее число магов, которые могут быть направлены в королевство не должно превышать \textbf{K}. Единственная надежда верховных магов заключается в том, что \textbf{K} достаточно велико, \textbf{2^K} ≥ \textbf{N}. Выясните, светлых или темных магов следует использовать для захвата королевства, а также в какие города их следует направить. \InputFile Первая строка входного файла содержит целые числа \textbf{N} и \textbf{K} (\textbf{2} ≤ \textbf{N} ≤ \textbf{256}, \textbf{2^K} ≥ \textbf{N}, \textbf{K} ≤ \textbf{N}). Следующие \textbf{N} строк содержат по \textbf{N} целых чисел каждая. На \textbf{i}-ой позиции \textbf{i}-ой из этих строк расположено число \textbf{0}, которое означает, что город не соединен дорогой сам с собой. Для всех \textbf{j} <> \textbf{i} число на \textbf{j}-ой позиции \textbf{i}-ой из этих строк равно \textbf{1}, если \textbf{i}-ый город соединен с \textbf{j}-ым белой дорогой и равно \textbf{2}, если они соединены черной дорогой. Числа в строках разделены пробелами. Гарантируется, что входные данные корректны, то есть если \textbf{i}-ый город соединен с \textbf{j}-ым белой дорогой, то и \textbf{j}-ый соединен с \textbf{i}-ым белой дорогой, аналогично в случае черных дорог. \OutputFile Если захватить королевство при заданных условиях невозможно, выведите в выходной файл единственное число \textbf{0}. В противном случае на первой строке выведите \textbf{1}, если удастся захватить королевство с использованием светлых магов, и \textbf{2}, если требуется использовать черных магов. На следующей строке выведите число \textbf{L} ≤ \textbf{K} - количество использованных магов. Третья строка должна содержать \textbf{L} целых чисел - номера городов, в которые следует направить магов. Заметьте, что вам \textbf{не требуется} минимизировать \textbf{L}. Если решений несколько, выведите любое.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 64 MiB
Giriş verilənləri #1
8 3
0 1 1 1 1 2 2 2
1 0 1 1 2 1 2 2
1 1 0 1 2 2 1 2
1 1 1 0 2 2 2 1
1 2 2 2 0 2 1 1
2 1 2 2 2 0 2 1
2 2 1 2 1 2 0 2
2 2 2 1 1 1 2 0
Çıxış verilənləri #1
1
3
1 3 8