Sudoku solution count
Your task
Given a 9x9 Sudoku grid as a list of lists of integers where 0 marks an empty cell and 1..9 are filled, count how many ways the empty cells can be filled to satisfy standard Sudoku rules (each row, column, and 3x3 box contains 1..9 exactly once). To keep it cheap, stop counting once you reach 2 (so the return is 0, 1, or 2, where 2 means 'two or more / not unique'). Assume the given filled cells are consistent. Return an integer.
Examples
count_sudoku_solutions(board: list[list[int]]) -> intExample 1
Input
count_sudoku_solutions([[5, 3, 4, 6, 7, 8, 9, 1, 2], [6, 7, 2, 1, 9, 5, 3, 4, 8], [1, 9, 8, 3, 4, 2, 5, 6, 7], [8, 5, 9, 7, 6, 1, 4, 2, 3], [4, 2, 6, 8, 5, 3, 7, 9, 1], [7, 1, 3, 9, 2, 4, 8, 5, 6], [9, 6, 1, 5, 3, 7, 2, 8, 4], [2, 8, 7, 4, 1, 9, 6, 3, 5], [3, 4, 5, 2, 8, 6, 1, 7, 9]])Output
1