Programing/Algorithm
[LeetCode] 36. Valid Sudoku
Napoliano
2025. 2. 13. 20:09
728x90
https://leetcode.com/problems/valid-sudoku/description/
public class Solution
{
public bool IsValidSudoku(char[][] board)
{
var zoneSetArr = new HashSet<char>[3, 3];
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
zoneSetArr[i, j] = new HashSet<char>();
}
}
for (int i = 0; i < 9; i++)
{
var colSet = new HashSet<char>();
var rowSet = new HashSet<char>();
for (int j = 0; j < 9; j++)
{
if (board[i][j] != '.')
{
if (colSet.Contains(board[i][j]))
return false;
colSet.Add(board[i][j]);
if (zoneSetArr[i / 3, j / 3].Contains(board[i][j]))
return false;
zoneSetArr[i / 3, j / 3].Add(board[i][j]);
}
if (board[j][i] != '.')
{
if (rowSet.Contains(board[j][i]))
return false;
rowSet.Add(board[j][i]);
}
}
}
return true;
}
}
728x90