#agc038a. [agc038_a]01 Matrix
[agc038_a]01 Matrix
题目描述
我们有一个 行 列的正方形网格。Snuke 想在每个方格中写入 或 。这里,需要满足以下所有条件:
- 对于每一行,以下两个值中的较小值为 :行中包含的 的数量和行中包含的 的数量。(如果这两个数相等,则“较小值”应被理解为“任意值”。)
- 对于每一列,以下两个值中的较小值为 :列中包含的 的数量和列中包含的 的数量。
确定是否可以通过在每个方格中写入 或 来满足这些条件。如果答案是肯定的,请给出一种填充方格的方法,使得满足条件。
约束条件
- 输入中的所有值均为整数。
输入
输入通过标准输入给出,格式如下:
输出
如果不能通过在每个方格中写入 或 来满足条件,则打印 。
如果可以满足条件,请以以下格式打印一种填充方格的方法:
这里, 是网格中从上往下第 行、从左往右第 列的方格中写的数字。
如果存在多个解,则任意一种解均可接受。
示例输入 1
3 3 1 1
示例输出 1
100
010
001
每一行都包含两个 和一个 ,因此满足第一个条件。此外,每一列都包含两个 和一个 ,因此满足第二个条件。
示例输入 2
1 5 2 0
示例输出 2
01010