Митофей посмотрел мюзикл «Гамильтон» и решил сделать свою постановку с друзьями-программистами-актёрами. Для этого ему нужна сцена, которую нужно разделить на N комнат и проходы между ними, причём между комнатами должно быть не больше одного прохода. Чтобы постановка была наиболее аутентична её названию, Митофей принял решение организовать проходы так, чтобы любой актёр мог начать выступление в любой из комнат и, перемещаясь только по проходам, пройти через каждую комнату ровно один раз, а в конце вернуться в изначальную. Другими словами, сцена должна содержать гамильтонов цикл.
Митофей знает, что проверка на существование гамильтонова цикла занимает огромное количество времени, ведь комнат целых N. Поэтому он использует условие Оре: выберем любые две комнаты, между которыми нет прохода, если для любой такой пары комнат сумма выходящих из них проходов не меньше N, то гамильтонов цикл существует. Другими словами, сумма степеней несмежных комнат не меньше количества комнат.
Женя, друг-программист-актёр, сообщил Митофею, что сцена готова. Однако ни друзьям, ни программистам, ни актёрам Митофей не доверяет. Перед первой репетицией осталось ровно 20 минут, за это время Митофей может добавить лишь один проход между такими комнатами, между которыми прохода не было. Подскажите Митофею, подготовил ли Женя сцену согласно условию Оре или нет. Если нет, то ответьте, может ли Митофей что-то с этим сделать. Если может, то сообщите ему, между какими комнатами нужно сделать проход.
Исходные данные
В первой строке даётся целое число N — количество комнат на сцене (3 ≤ N ≤ 3 000).
В следующих N строках даны N бинарных строк длины N. Символ eij в i-й строке на j-й позиции равен 0, если прохода между i-й и j-й комнатами нет, либо 1, если есть. Гарантируется, что eij = eji и eii = 0 для любых i и j.
Результат
Выведите «Absolute Hamilton!!!», если сцена уже удовлетворяет условию Оре. В противном случае, если Митофей не может добавить новый проход так, чтобы сцена удовлетворяла условию Оре, выведите «No Hamilton:-(». Если же Митофей способен это сделать, выведите «Build Hamilton!!!», а затем выведите два различных целых числа u и v — номера комнат, между которыми надо добавить проход Митофею. Заметьте, что euv должно равняться 0 в вводе. Если есть несколько решений, выведите любое из них.
Примеры
| исходные данные | результат |
|---|
3
001
000
100
| No Hamilton:-(
|
3
011
100
100
| Build Hamilton!!!
2 3
|
3
011
101
110
| Absolute Hamilton!!!
|
Автор задачи: Тимофей Имаев (подготовка — Вадим Баринов)
Источник задачи: Квалификационный тур Уральского регионального чемпионата ICPC 2026: отбор УрФУ