CQOI2014和谐矩阵
问题描述
我们称一个有0和1组成的矩阵是和谐的,当且仅当每个元素都有偶数个相邻的1。
一个元素相邻的元素包括它本身,以及他上下左右四个元素(如果存在)。
给定矩阵的行数和列数,请计算并输出一个和谐的矩阵。请注意,所有元素为0的矩阵式不允许的。
输入格式
输入一行,包含两个空格分开的整数m,n,分别表示行数和列数。
输出格式
输出包含m行,每行n个空格分隔的整数(0或1),为所求矩阵。测试数据保证有解。
样例输入
4 4
样例输出
官方给出的数据输出:
0 1 0 0
1 1 1 0
0 0 0 1
1 1 0 1
按照字典序应该输出:
0 0 0 1
0 0 1 1
0 1 0 1
1 1 1 0
提示
1<=m,n<=40
注:由于原题是SPJ,本OJ暂时没有开发此功能,所以修改了官方数据。你需要使第一行的字典序最小,第一行相同的第二行字典序最小,以此类推。
没有字典序最小的限制的话,跑完高斯消元就随便输出一个解。
想要字典序最小,贪心地考虑,肯定是想办法把越靠前的元素变成0.根据高斯消元的性质,对于有多解的方程,方程越靠后,自由变元越靠后。所以按照从右下到左上的顺序列方程,字典序枚举自由变元即可。好像可以直接将所有自由变元置为0?
1 |
|