遇事不决
慢慢写呗。。。。
class Solution:
def isValidSudoku(self, board: List[List[str]]) -> bool:
a=dict()
b=dict()
c=dict()
m=0
for i in range(0,9):
a.clear()
b.clear()
for j in range (0,9):
if board[i][j]=='.':
pass
elif board[i][j] in a.values():
return False
else:
a[j]=board[i][j]
if board[j][i]=='.':
pass
elif board[j][i] in b.values():
return False
else :
b[j]=board[j][i]
c.clear()
for i in range(0,3):
for j in range(0,3):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(0,3):
for j in range(3,6):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(0,3):
for j in range(6,9):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(3,6):
for j in range(0,3):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(3,6):
for j in range(6,9):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(6,9):
for j in range(0,3):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(6,9):
for j in range(3,6):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(6,9):
for j in range(6,9):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
c.clear()
for i in range(3,6):
for j in range(3,6):
if board[i][j] == '.':
pass
elif board[i][j] in c.values():
return False
else:
m=m+1
c[m]=board[i][j]
return True
不就是重复九次嘛
还是想不到怎么整合到一个循环里
也算是浅浅地用了一下刚刚学的hash table了
速度还行