An n x n matrix is valid if every row and every column contains all the integers from 1 to n (inclusive).
주어진 n * n 의 2차원 배열에서 모든 행과 열이 1 ~ n까지의 숫자를 가지는지 검사하시오.
Input: matrix = [[1,2,3],[3,1,2],[2,3,1]]
Output: true
스도쿠 풀이 https://velog.io/@ilov1112/Leetcode-37.-Sudoku-Solver-with-Python
에서 썼던 코드중 행과 열 검사 코드만 뽑아와서
사용하면 된다.
class Solution:
def checkValid(self, matrix: List[List[int]]) -> bool:
def checker(matrix: List[List[int]], row: int, col: int, size: int):
r = set()
c = set()
for i in range(size):
if matrix[row][i] in r: return False
if matrix[i][col] in c: return False
r.add(matrix[row][i])
c.add(matrix[i][col])
return True
for i in range(len(matrix)):
if checker(matrix, i, i, len(matrix)) == False: return False
return True