상위 150개 인터뷰쉬움

유효한 스도쿠

'Valid Sudoku' 문제에 대한 자세한 가이드 및 Python 구현입니다.

문제 설명

쉬움

9 x 9 스도쿠 보드가 유효한지 확인합니다. 다음 규칙에 따라 채워진 셀만 검증하면 됩니다.

1. 각 행에는 1~9의 숫자가 반복 없이 포함되어야 합니다.

2. 각 열에는 1~9의 숫자가 반복 없이 포함되어야 합니다.

3. 그리드의 9개의 3 x 3 하위 상자 각각에는 숫자 1-9가 반복 없이 포함되어야 합니다.

참고: 스도쿠 보드(부분적으로 채워짐)는 유효할 수 있지만 반드시 풀 수 있는 것은 아닙니다. 채워진 셀만 검증하면 됩니다.

isValidSudoku(board: List[List[str]]) -> bool 함수를 작성하세요.

제약
  • board.length == 9
  • board[i].length == 9
  • board[i][j] is a digit 1-9 or '.'

Example 1
Input
board = [["5","3",".",".","7",".",".",".","."],["6",".",".","1","9","5",".",".","."],[".","9","8",".",".",".",".","6","."],["8",".",".",".","6",".",".",".","3"],["4",".",".","8",".","3",".",".","1"],["7",".",".",".","2",".",".",".","6"],[".","6",".",".",".",".","2","8","."],[".",".",".","4","1","9",".",".","5"],[".",".",".",".","8",".",".","7","9"]]
Output
True
Explanation

No row, column, or 3x3 sub-box contains a duplicate digit.

Example 2
Input
board = [["8","3",".",".","7",".",".",".","."],["6",".",".","1","9","5",".",".","."],[".","9","8",".",".",".",".","6","."],["8",".",".",".","6",".",".",".","3"],["4",".",".","8",".","3",".",".","1"],["7",".",".",".","2",".",".",".","6"],[".","6",".",".",".",".","2","8","."],[".",".",".","4","1","9",".",".","5"],[".",".",".",".","8",".",".","7","9"]]
Output
False
Explanation

The digit 8 appears twice in the first column (rows 0 and 3) and twice in the top-left 3x3 sub-box.

Need a Hint?
세트나 힙과 같은 배열 및 해싱 관련 데이터 구조를 사용해 보세요.
Edge Cases to Watch
  • 빈 입력 구조
  • 단일 요소 입력
  • 큰 수치 범위

해결할 준비가 되셨나요?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

편집기에서 열기
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.