Кодовый замок
Кодовый замок
Агенту Джонни Инглишу нужно вскрыть сейф, чтобы выкрасть секретную информацию о готовящемся заговоре против королевы Британии.
Кодовый замок к сейфу представляет из себя таблицу из n строк и m столбцов. Замок можно взломать, если в каждом столбце таблицы все числа будут различными.
Джонни не силен в искусстве взлома, поэтому его возможности ограничиваются лишь тем, что он может разворачивать любые строки таблицы, но не более одного раза каждую.
Однако времени мало, а сейф может так и не открыться, если использовать такие примитивные методы. Поэтому Инглиш должен заранее знать, сможет ли он открыть сейф или ему не стоит пускаться в эту авантюру. Помогите Джонни узнать, какие строки следует развернуть, чтобы открыть сейф.
Входные данные
В первой строке даны два целых числа n и m - количество строк и столбцов таблицы кодового замка (1 ≤ n, m ≤ 103
).
В каждой из n следующих строк дано по m целых чисел — описание таблицы кодового замка. Все числа таблицы находятся в диапазоне от 1 до 109
.
Выходные данные
В первой строке выведите No, если Джонни не сможет взломать замок.
В противном случае выведите Yes, а второй строке число строк, которые Джонни следует повернуть. В третьей строке выведите в любом порядке номера строк, которые нужно развернуть для открытия замка, разделенные пробелами.
Если существует несколько решений, разрешается вывести любое из них.
3 5 1 2 3 4 5 2 3 5 4 6 9 3 7 8 9
Yes 1 2
2 5 1 2 3 4 5 6 4 7 2 5
No
4 3 1 2 3 4 5 6 7 8 9 10 11 12
Yes 0