CF243E Matrix
题目描述
给定一个 $n \times n$ 的方阵,每个元素为 $0$ 或 $1$。
我们称一个矩阵是“好矩阵”,如果它满足以下条件:在矩阵的每一行中,所有的 $1$ 必须连续成一段。也就是说,每一行都形如 $00...0011...1100...00$(如果没有 $1$,则全为 $0$)。
现给定一个大小为 $n \times n$、仅含 $0$ 和 $1$ 的矩阵 $a$,你的任务是判断能否通过重新排列矩阵的列,得到一个“好矩阵” $b$。
输入格式
第一行包含整数 $n$($1 \leq n \leq 500$),表示矩阵 $a$ 的大小。
接下来 $n$ 行,每行包含由字符 '0' 和 '1' 组成的 $n$ 个字符,表示矩阵 $a$。注意字符之间没有分隔符。
输出格式
如果可以通过重新排列列得到一个好矩阵,在第一行输出 "YES"。接下来的 $n$ 行输出任意一种可行的好矩阵 $b$。
如果无法得到好矩阵,输出 "NO"。
说明/提示
由 ChatGPT 5 翻译