본문 바로가기
스도쿠문제 풀이/데일리 스도쿠풀이

[문제풀이] The Daily Sudoku 2007년 07월 20일 VeryHard

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

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


-- 현재 빈칸에 올수있는 모든 후보들을 찾은 상태입니다. --
8 136 1369 256 169 29 2356 4 7
1479 1467 1469 3 1679 2479 2568 568 58
2 5 346 8 67 47 1 36 9
347 9 234 1 5 8 37 37 6
1357 137 8 9 2 6 4 357 15
15 16 156 7 4 3 589 2 158
49 24 7 26 689 5 689 1 3
3459 234 23459 26 36789 1 56789 56789 458
6 8 1359 4 379 79 579 579 2

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

8 136 1369 256 169 29 2356 4 7
17 1467 1469 3 1679 2479 2568 568 58
2 5 346 8 67 47 1 36 9
4 9 2 1 5 8 37 37 6
1357 137 8 9 2 6 4 357 15
15 16 156 7 4 3 589 2 158
9 24 7 26 68 5 68 1 3
35 234 345 26 36789 1 56789 56789 458
6 8 135 4 379 79 579 579 2

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

8 136 1369 256 169 29 236 4 7
17 1467 1469 3 1679 2479 268 68 5
2 5 346 8 67 47 1 36 9
4 9 2 1 5 8 37 37 6
357 37 8 9 2 6 4 357 1
15 16 156 7 4 3 9 2 8
9 24 7 26 68 5 68 1 3
35 23 35 26 36789 1 5678 56789 4
6 8 135 4 379 79 57 579 2

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

8 136 1369 5 169 29 23 4 7
17 167 1469 3 1679 2479 28 68 5
2 5 346 8 67 47 1 36 9
4 9 2 1 5 8 37 37 6
357 37 8 9 2 6 4 357 1
15 16 156 7 4 3 9 2 8
9 4 7 2 8 5 6 1 3
35 23 35 6 379 1 578 5789 4
6 8 135 4 379 79 57 579 2

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

8 136 369 5 169 29 23 4 7
17 167 469 3 1679 2479 28 68 5
2 5 346 8 67 47 1 36 9
4 9 2 1 5 8 37 37 6
37 37 8 9 2 6 4 5 1
15 16 56 7 4 3 9 2 8
9 4 7 2 8 5 6 1 3
35 2 35 6 79 1 78 789 4
6 8 1 4 3 79 5 79 2

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

8 136 369 5 169 29 23 4 7
17 167 469 3 169 249 28 68 5
2 5 346 8 67 47 1 36 9
4 9 2 1 5 8 37 37 6
37 37 8 9 2 6 4 5 1
15 16 56 7 4 3 9 2 8
9 4 7 2 8 5 6 1 3
35 2 35 6 79 1 78 789 4
6 8 1 4 3 79 5 79 2

Z99 - Substitution : 현재적용된 로직으로 더 이상 문제를 풀수없어 대입법을 사용합니다. [6,1]셀 "29"값중 "2"값 대입
L01 - Naked Single : [6,1]셀 "2"값과 관련된 로우, 컬럼, 블럭에서 "2"값 제거
L01 - Naked Single : [7,1]셀 "3"값과 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L01 - Naked Single : [8,3]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [7,4]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [7,8]셀 "8"값과 관련된 로우, 컬럼, 블럭에서 "8"값 제거
L01 - Naked Single : [5,3]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [6,3]셀 "4"값과 관련된 로우, 컬럼, 블럭에서 "4"값 제거
L01 - Naked Single : [5,8]셀 "9"값과 관련된 로우, 컬럼, 블럭에서 "9"값 제거
L01 - Naked Single : [8,8]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [6,2]셀 "9"값과 관련된 로우, 컬럼, 블럭에서 "9"값 제거
L01 - Naked Single : [3,3]셀 "3"값과 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L01 - Naked Single : [3,8]셀 "5"값과 관련된 로우, 컬럼, 블럭에서 "5"값 제거
L01 - Naked Single : [3,6]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [1,8]셀 "3"값과 관련된 로우, 컬럼, 블럭에서 "3"값 제거
L01 - Naked Single : [1,5]셀 "7"값과 관련된 로우, 컬럼, 블럭에서 "7"값 제거
L01 - Naked Single : [2,6]셀 "1"값과 관련된 로우, 컬럼, 블럭에서 "1"값 제거
L01 - Naked Single : [2,1]셀 "6"값과 관련된 로우, 컬럼, 블럭에서 "6"값 제거
L01 - Naked Single : [5,1]셀 "1"값과 관련된 로우, 컬럼, 블럭에서 "1"값 제거

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

Logic 사용횟수
L01 - Naked Single 57회
L02 - Hidden Single 12회
L04 - InterSection Lock 1회
Z99 - Substitution 1회

소요시간 : 0분 0.281초

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