python leetcode 36. Valid Sudoku

判断行列,3*3正方形中是否有重复数字即可。由于总数字有限,所以用集合或是字典存储都可以

class Solution:
    def isValidSudoku(self, board):
        """
        :type board: List[List[str]]
        :rtype: bool
        """
        dict1={}
        for i in range(9):
            for j in range(9):
                if board[i][j]!='.':
                    d=int(board[i][j])
                    if (i,-1,d) in dict1 or (-1,j,d) in dict1 or (i//3,j//3,d) in dict1:
                        return False
                    dict1[(i,-1,d)]=True
                    dict1[(-1,j,d)]=True
                    dict1[(i//3,j//3,d)]=True
        return True

猜你喜欢

转载自blog.csdn.net/Neekity/article/details/84869645