目标:给定一个正整数的矩阵,输出包含的最小中心对称矩阵(该矩阵也可能包含非正整数)。M
中心对称矩阵是具有2阶旋转对称性的正方形矩阵,即,将其旋转两次后仍保持相同的矩阵。例如,中心对称矩阵的左上角元素与右下角元素相同,中心上方的元素与中心下方的元素相同。在这里可以找到有用的可视化。
更正式地说,给定的矩阵,产生一个方阵使得是中心对称的和,并且不存在其他方阵使得。Ñ Ñ 中号⊆ Ñ ķ 暗淡ķ < 暗淡Ñ
乙甲⊆ 乙甲我,Ĵ乙我+ 我',Ĵ + Ĵ “(我',Ĵ ')当且仅当每个值出现在索引,是的子集(符号:)。。
注意:某些矩阵具有多个解(例如[[3,3],[1,2]]
,以[[2,1,0],[3,3,3],[0,1,2]]
或求解[[3,3,3],[1,2,1],[3,3,3]]
);您必须输出至少一种有效解决方案。
测试用例
input
example output
[[1, 2, 3],
[4, 5, 6]]
[[1, 2, 3, 0],
[4, 5, 6, 0],
[0, 6, 5, 4],
[0, 3, 2, 1]]
[[9]]
[[9]]
[[9, 10]]
[[9, 10],
[10, 9]]
[[100, 200, 300]]
[[100, 200, 300],
[ 0, 0, 0],
[300, 200, 100]]
[[1, 2, 3],
[4, 5, 4]]
[[1, 2, 3],
[4, 5, 4]
[3, 2, 1]]
[[1, 2, 3],
[5, 6, 5],
[3, 2, 1]]
[[1, 2, 3],
[5, 6, 5],
[3, 2, 1]]
[[4, 5, 4],
[1, 2, 3]]
[[3, 2, 1],
[4, 5, 4],
[1, 2, 3]]
[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 9, 9, 9, 9, 9, 9, 9],
[1, 1, 1, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 1]]
[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 9],
[1, 1, 1, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[1, 1, 1, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 1, 1, 1],
[9, 9, 9, 9, 9, 9, 9, 9, 9, 1, 1, 1],
[9, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]
为什么中心对称矩阵必须是正方形的?
—
Ad Hoc Garf Hunter
从一般意义上来说,@ WW并不是必须的。对于这个问题,但是,他们必须是方形的定义
—
康纳尔奥布莱恩
我想知道为什么您要做出这样的选择
—
特设Garf Hunter,
@WW这是一种简化,我认为对简化很有用
—
Conor O'Brien