一个 n x n 的二维网络 board 仅由 0 和 1 组成 。每次移动,你能任意交换两列或是两行的位置。
返回 将这个矩阵变为 “棋盘” 所需的最小移动次数 。如果不存在可行的变换,输出 -1。
“棋盘” 是指任意一格的上下左右四个方向的值均与本身不同的矩阵。
参考题解:
【爪哇缪斯】图解LeetCode
矩阵是否合法
- 长度布局:分为偶数(格子)长度和奇数(格子)长度。
- 数字布局:以0开始进行数字布局,还是以1作为数字布局。
如何计算出变为棋盘的步数
- 只需要关注第一行和第一列的移动情况即可