본문 바로가기
스도쿠문제 풀이/AM7 스도쿠풀이

[문제풀이] AM7 스도쿠 2007년 08월 14일 Normal

by 김프로 2007. 8. 19.
9       1   8    
    4     9 3    
  1     5       2
3       9 4 1    
                 
    5 6 7       4
8       3     7  
    1 5     2    
    3   6       1

※ 풀이과정 입니다. (셀 좌표는 [컬럼,로우])


-- 현재 빈칸에 올수있는 모든 후보들을 찾은 상태입니다. --
9 23567 267 2347 1 2367 8 456 567
2567 25678 4 278 28 9 3 156 567
67 1 678 3478 5 3678 467 469 2
3 2678 2678 28 9 4 1 2568 5678
12467 246789 26789 1238 28 12358 567 23568 35678
12 28 5 6 7 1238 9 238 4
8 24569 269 1249 3 12 456 7 569
467 4679 1 5 48 78 2 34689 3689
2457 24579 3 24789 6 278 45 4589 1

L02 - Hidden Single : [8,2]셀 "1"값은 로우2 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "1"값 제거
L02 - Hidden Single : [8,3]셀 "9"값은 로우3 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "9"값 제거

9 23567 267 2347 1 2367 8 456 567
2567 25678 4 278 28 9 3 1 567
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
12467 246789 26789 1238 28 12358 567 23568 35678
12 28 5 6 7 1238 9 238 4
8 24569 269 1249 3 12 456 7 569
467 4679 1 5 48 78 2 3468 3689
2457 24579 3 24789 6 278 45 458 1

L02 - Hidden Single : [2,1]셀 "3"값은 컬럼2 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L02 - Hidden Single : [5,8]셀 "4"값은 컬럼5 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "4"값 제거
L02 - Hidden Single : [6,5]셀 "5"값은 컬럼6 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "5"값 제거

9 3 267 247 1 267 8 456 567
2567 25678 4 278 28 9 3 1 567
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
12467 246789 26789 1238 28 5 67 2368 3678
12 28 5 6 7 1238 9 238 4
8 24569 269 129 3 12 456 7 569
67 679 1 5 4 78 2 368 3689
2457 24579 3 2789 6 278 45 458 1

L03 - Naked Pair : 컬럼1 {3,8}번째 셀 "67"값은 Subset 패턴2, 나머지셀에서 "67"값 제거

9 3 267 247 1 267 8 456 567
25 25678 4 278 28 9 3 1 567
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
124 246789 26789 1238 28 5 67 2368 3678
12 28 5 6 7 1238 9 238 4
8 24569 269 129 3 12 456 7 569
67 679 1 5 4 78 2 368 3689
245 24579 3 2789 6 278 45 458 1

L03 - Naked Pair : 블럭5 {1,5}번째 셀 "28"값은 Subset 패턴2, 나머지셀에서 "28"값 제거

9 3 267 247 1 267 8 456 567
25 25678 4 278 28 9 3 1 567
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
124 246789 26789 13 28 5 67 2368 3678
12 28 5 6 7 13 9 238 4
8 24569 269 129 3 12 456 7 569
67 679 1 5 4 78 2 368 3689
245 24579 3 2789 6 278 45 458 1

L04 - InterSection Lock : 로우1 vs 블럭3, 블럭3의 "5"값은 반드시 로우1 내에 위치해야 함

9 3 267 247 1 267 8 456 567
25 25678 4 278 28 9 3 1 67
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
124 246789 26789 13 28 5 67 2368 3678
12 28 5 6 7 13 9 238 4
8 24569 269 129 3 12 456 7 569
67 679 1 5 4 78 2 368 3689
245 24579 3 2789 6 278 45 458 1

L04 - InterSection Lock : 컬럼7 vs 블럭9, 블럭9의 "5"값은 반드시 컬럼7 내에 위치해야 함

9 3 267 247 1 267 8 456 567
25 25678 4 278 28 9 3 1 67
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
124 246789 26789 13 28 5 67 2368 3678
12 28 5 6 7 13 9 238 4
8 24569 269 129 3 12 456 7 69
67 679 1 5 4 78 2 368 3689
245 24579 3 2789 6 278 45 48 1

L05 - Hidden Pair : 로우7 {2,7}번째 셀 "45"값은 Subset 패턴2, {2,7}번째 셀 "45"(이)가 아닌값 제거

9 3 267 247 1 267 8 456 567
25 25678 4 278 28 9 3 1 67
67 1 678 3478 5 3678 467 9 2
3 2678 2678 28 9 4 1 2568 5678
124 246789 26789 13 28 5 67 2368 3678
12 28 5 6 7 13 9 238 4
8 45 269 129 3 12 45 7 69
67 679 1 5 4 78 2 368 3689
245 24579 3 2789 6 278 45 48 1

L03 - Naked Pair : 컬럼7 {7,9}번째 셀 "45"값은 Subset 패턴2, 나머지셀에서 "45"값 제거

9 3 267 247 1 267 8 456 567
25 25678 4 278 28 9 3 1 67
67 1 678 3478 5 3678 67 9 2
3 2678 2678 28 9 4 1 2568 5678
124 246789 26789 13 28 5 67 2368 3678
12 28 5 6 7 13 9 238 4
8 45 269 129 3 12 45 7 69
67 679 1 5 4 78 2 368 3689
245 24579 3 2789 6 278 45 48 1

L02 - Hidden Single : [4,3]셀 "4"값은 로우3 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "4"값 제거
L02 - Hidden Single : [8,1]셀 "4"값은 로우1 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "4"값 제거
L01 - Naked Single : [8,9]셀 "8"값과 관련된 로우, 컬럼, 블럭에서 "8"값 제거

9 3 267 27 1 267 8 4 567
25 25678 4 278 28 9 3 1 67
67 1 678 4 5 3678 67 9 2
3 2678 2678 28 9 4 1 256 5678
124 246789 26789 13 28 5 67 236 3678
12 28 5 6 7 13 9 23 4
8 45 269 129 3 12 45 7 69
67 679 1 5 4 78 2 36 369
245 24579 3 279 6 27 45 8 1

L02 - Hidden Single : [9,1]셀 "5"값은 로우1 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "5"값 제거
L02 - Hidden Single : [6,3]셀 "3"값은 로우3 에서 유니크 값, 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L01 - Naked Single : [6,6]셀 "1"값과 관련된 로우, 컬럼, 블럭에서 "1"값 제거
L01 - Naked Single : [6,7]셀 "2"값과 관련된 로우, 컬럼, 블럭에서 "2"값 제거
L01 - Naked Single : [6,9]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [6,1]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [4,5]셀 "3"값과 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L01 - Naked Single : [1,6]셀 "2"값과 관련된 로우, 컬럼, 블럭에서 "2"값 제거
L01 - Naked Single : [2,6]셀 "8"값과 관련된 로우, 컬럼, 블럭에서 "8"값 제거
L01 - Naked Single : [8,6]셀 "3"값과 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L01 - Naked Single : [8,8]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [4,9]셀 "9"값과 관련된 로우, 컬럼, 블럭에서 "9"값 제거
L01 - Naked Single : [1,2]셀 "5"값과 관련된 로우, 컬럼, 블럭에서 "5"값 제거
L01 - Naked Single : [8,5]셀 "2"값과 관련된 로우, 컬럼, 블럭에서 "2"값 제거
L01 - Naked Single : [9,7]셀 "9"값과 관련된 로우, 컬럼, 블럭에서 "9"값 제거
L01 - Naked Single : [1,8]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [2,8]셀 "9"값과 관련된 로우, 컬럼, 블럭에서 "9"값 제거
L01 - Naked Single : [1,9]셀 "4"값과 관련된 로우, 컬럼, 블럭에서 "4"값 제거
L01 - Naked Single : [7,9]셀 "5"값과 관련된 로우, 컬럼, 블럭에서 "5"값 제거
L01 - Naked Single : [1,3]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [7,3]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [5,5]셀 "8"값과 관련된 로우, 컬럼, 블럭에서 "8"값 제거
L01 - Naked Single : [7,5]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [9,5]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [3,7]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [2,9]셀 "2"값과 관련된 로우, 컬럼, 블럭에서 "2"값 제거
L01 - Naked Single : [2,2]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [5,2]셀 "2"값과 관련된 로우, 컬럼, 블럭에서 "2"값 제거

9 3 2 7 1 6 8 4 5
5 7 4 8 2 9 3 1 6
6 1 8 4 5 3 7 9 2
3 6 7 2 9 4 1 5 8
1 4 9 3 8 5 6 2 7
2 8 5 6 7 1 9 3 4
8 5 6 1 3 2 4 7 9
7 9 1 5 4 8 2 6 3
4 2 3 9 6 7 5 8 1

Logic 사용횟수
L01 - Naked Single 54회
L02 - Hidden Single 9회
L03 - Naked Pair 3회
L04 - InterSection Lock 2회
L05 - Hidden Pair 1회

소요시간 : 0분 0.172초

Logic 순서
L01 - Naked Single
L02 - Hidden Single
L03 - Naked Pair
L04 - InterSection Lock
L05 - Hidden Pair
L06 - Naked Triple
L07 - Hidden Triple
L08 - Naked Quad
L09 - Hidden Quad
L10 - X-Wing
L11 - Sword-Fish
L12 - Jelly-Fish
Z99 - Substitution
Z99 - RollbackSudoku

현재 모든로직이 완성되지않아 "L12"번 까지의 풀이법으로 문제를 풀수없는경우 Z99 - Substitution(대입법)을 이용합니다.
L12 - Jelly-Fish 풀이법보다 상위 풀이법은 현재 작업중입니다.

Sudoku K ver3.11.723 by keetekee / Sudoku Programming http://resrc.tistory.com