This approach uses a single res array and tuples to mark every existing number and its position.

In stead of using 3 different arrays, only 1 array is used, and if the board is sparse, lots of space could be saved.

This approach is made by Zach @zqiu01

```
res = []
for row in range(len(board)):
for col in range(len(board)):
if board[row][col]=='.': continue
num = board[row][col]
if (row,'row', num) in res: return False
else: res.append((row, 'row', num))
if (col,'col',num) in res: return False
else: res.append((col, 'col', num))
if (row//3, col//3, num) in res: return False
else: res.append((row//3, col//3,num))
return True
```

'''