그동안 스도쿠에 관심이 없다가.. 어제부터 스도쿠에 입문한 스린입니다..
몇번하다가 막히는 문제가 있어서 후보수를 ai들에게 검수해달라고 했다가 놀라운 발견을 했어요...
제미나이와 GPT 모두 무료버전을 사용하고 있는데.. 둘다 스도쿠를 못풉니다.....
막 자신은 맞았다고 자신있게 말하다가도.. 틀렸다고 짚어주니까.. 자기들은 거대언어모델이라서 논리적인 추론을 하는 능력이 약하다네요...;;;

AI들을 놀려주기 위해선 스도쿠 공부를 해야겠어요!
그리고 이건.. 제가 ai들에게 문제를 준 원본입니다.

8 2 6 | 5 7 1 | 3 9 4
3 1 4 | 9 2 8 | 5 6 7
7 9 5 | 6 3 4 | 8 1 2
------+-------+------
9 7 1 | 8 6 5 | 4 2 3
2 4 3 | 1 9 7 | 6 8 5
5 6 8 | 2 4 3 | 1 7 9
------+-------+------
1 8 9 | 3 5 2 | 7 4 6
6 5 7 | 4 8 9 | 2 3 1
4 3 2 | 7 1 6 | 9 5 8
이거라네요
스도쿠 문제는 유료모델을 이용하자;;
8 2 6 | 5 7 1 | 3 9 4
3 1 4 | 9 2 8 | 5 6 7
7 9 5 | 6 3 4 | 8 1 2
------+-------+------
9 7 1 | 8 6 5 | 4 2 3
2 4 3 | 1 9 7 | 6 8 5
5 6 8 | 2 4 3 | 1 7 9
------+-------+------
1 8 9 | 3 5 2 | 7 4 6
6 5 7 | 4 8 9 | 2 3 1
4 3 2 | 7 1 6 | 9 5 8
-
좋은 질문이네요. 제가 사용한 건 백트래킹(Backtracking) 알고리즘입니다. 사람이 푸는 논리적 방법(스캐닝, 펜슬마크 등)이 아니라 컴퓨터식 무차별 탐색에 가깝습니다. 두 가지를 모두 설명드릴게요.
1. 제가 실제로 쓴 알고리즘: 백트래킹
핵심 아이디어는 단순합니다.
"빈 칸에 1~9를 하나씩 넣어보고, 규칙에 어긋나면 되돌아간다."
동작 흐름
- 보드를 왼쪽 위부터 오른쪽 아래로 스캔하며 빈 칸을 찾는다.
- 그 칸에 1부터 9까지 하나씩 넣어본다.
- 넣은 숫자가 그 행/열/3×3 박스의 규칙을 위반하지 않으면 → 다음 빈 칸으로 진행.
- 위반하면 → 다음 숫자를 시도.
- 1~9 모두 안 되면 → 이전 칸으로 되돌아가서(backtrack) 그 칸의 숫자를 다음 후보로 바꾼다.
- 모든 칸이 채워지면 종료.
백트래킹의 장단점
장점: 구현이 간단하고, 정답이 존재하면 반드시 찾는다.
단점: 무식한 탐색이라 어려운 문제에서는 시도 횟수가 폭증할 수 있다. (다행히 9×9 스도쿠는 충분히 빠르게 끝남)
2. 사람이 푸는 논리적 방법
사람은 1~9를 다 시도하지 않고, 다음 두 가지 핵심 기법으로 풉니다.
Naked Single (확정 칸)
빈 칸의 행, 열, 박스를 보고 그 칸에 들어갈 수 있는 숫자가 단 하나뿐일 때 바로 확정합니다.
예를 들어 4행 1열에 9가 이미 있고, 어떤 빈 칸의 행·열·박스를 다 검사해 보니 가능한 숫자가 7 하나뿐 → 7로 확정.
Hidden Single (숨은 단일)
행/열/박스 안에서, 특정 숫자가 들어갈 자리가 한 군데뿐일 때 그 자리를 확정합니다.
예: 1번 박스(좌상단 3×3)에 6이 아직 없는데, 박스 안의 빈 칸 중 6이 들어갈 수 있는 자리가 r1c3 한 군데뿐 → r1c3 = 6.
더 어려운 기법
Naked Pairs, Pointing Pairs, X-Wing, Swordfish 등이 있는데, 사람이 손으로 푸는 고난도 스도쿠에서 쓰입니다. 컴퓨터는 굳이 안 써도 백트래킹으로 충분합니다.
실제로 풀이 과정을 보면... 파이썬으로 프로그램 만들어서 돌리고 결과 내더군요 ㄷㄷㄷ 검증하는 것도 코드 만들어서 한번 더 검증을 ㄷㄷㄷ
내 손에 망치 있다. 제대로 대답해라. 라고 하셨어야...
gpt 에서는 “생각해줘”를 선택하고 질문해보세요.
Gemini 에서는 무료 사용자도 사고 모델이나 PRO모델이 일정량 사용 가능하니 체크해보세요~
아니 위에 이미지하고 왜 다르지 하고 보니 제가 쓴 제미나이는 답이 틀렸네요.
이놈의 제미나이 ! (회사 구글 메일로 쓰는 제미나이는 프로가 아닌건가요 ?)
3 1 4 | 9 2 8 | 5 6 7
7 9 5 | 6 3 4 | 8 1 2
------+-------+------
9 7 1 | 8 6 5 | 4 2 3
2 4 3 | 1 9 7 | 6 8 5
5 6 8 | 2 4 3 | 1 7 9
------+-------+------
1 8 9 | 3 5 2 | 7 4 6
6 5 7 | 4 8 9 | 2 3 1
4 3 2 | 7 1 6 | 9 5 8
클로드도 풀었습니다. \
엄청 세세하게 하나하나 다 짚어줘야 겨우 이해해요
무료버전은 BIOS 화면이랑 표의 텍스트 를 캡쳐해서 보여주면 엉뚱한 답을 내놔요