반응형
https://leetcode.com/problems/special-positions-in-a-binary-matrix/description/
각 행과 열에서 1의 개수를 전처리해줍니다.
행렬의 숫자가 1일 때, 위치한 행과 열에서 1의 개수가 1개인지 확인해줍니다.
class Solution {
public:
int numSpecial(vector<vector<int>>& mat) {
int n = mat.size();
int m = mat.front().size();
vector<int> rows(n, 0), cols(m, 0);
for(int i=0; i<n; i++) {
for(int j=0; j<m; j++) {
rows[i] += mat[i][j];
cols[j] += mat[i][j];
}
}
int res = 0;
for(int i=0; i<n; i++) {
for(int j=0; j<m; j++) {
res += mat[i][j] && rows[i] == 1 && cols[j] == 1;
}
}
return res;
}
};
반응형
'Algorithm' 카테고리의 다른 글
LeetCode 1436. Destination City (0) | 2023.12.15 |
---|---|
LeetCode 2482. Difference Between Ones and Zeros in Row and Column (0) | 2023.12.14 |
LeetCode 1464. Maximum Product of Two Elements in an Array (0) | 2023.12.12 |
LeetCode 1287. Element Appearing More Than 25% In Sorted Array (0) | 2023.12.12 |
LeetCode 867. Transpose Matrix (1) | 2023.12.10 |