Рассмотрим квадратную матрицу размера n × n, состоящую из единиц и нулей.
Будем считать матрицу хорошей, если она удовлетворяет следующему условию: в каждой строке матрицы все единицы идут подряд. То есть каждая строка имеет вид 00...0011...1100...00 (или же просто состоит из нулей, если в ней нет единиц).
Дана матрица a размера n × n, состоящая из единиц и нулей. Определите, можно ли из нее получить хорошую матрицу b с помощью перестановки столбцов, или нет.
Выходные данные
Выведите «YES» в первой строке, если возможно так переставить столбцы матрицы a, чтобы получилась хорошая матрица b. В следующих n строках выведите хорошую матрицу b. Если существует несколько ответов, разрешается вывести любой.
Если получить хорошую матрицу невозможно, выведите «NO».
Примеры
| № | Входные данные | Выходные данные |
|
1
|
6 100010 110110 011001 010010 000100 011001
|
YES
011000
111100
000111
001100
100000
000111
|
|
2
|
3 110 101 011
|
NO
|