2133. Check if Every Row and Colum Contains All Numbers #
题目 #
-
对一个大小为
n x n
的矩阵而言,如果其每一行和每一列都包含从1
到n
的 全部 整数(含1
和n
),则认为该矩阵是一个 有效 矩阵。给你一个大小为
n x n
的整数矩阵matrix
,请你判断矩阵是否为一个有效矩阵:如果是,返回true
;否则,返回false
。
思路 #
哈希 #
代码 #
哈希 #
class Solution {
public boolean checkValid(int[][] matrix) {
int N = matrix.length;
int[] cnt = new int[N];
for (int i = 0; i < N; i++) {
Arrays.fill(cnt, 1);
for (int num: matrix[i]) if (--cnt[num-1] < 0) return false;
}
for (int j = 0; j < N; j++) {
Arrays.fill(cnt, 1);
for (int i = 0; i < N; i++) {
if (--cnt[matrix[i][j]-1] < 0) return false;
}
}
return true;
}
}