쇼핑리스트

[스크랩] Sudoku(스도쿠) 문제 풀이법 - 유일한 숫자 찾기 - Unique Digit Set

대영플랜트 2010. 11. 13. 23:11

 

Sudoku(스도쿠) 문제 풀이법 - 유일한 숫자 찾기 - Unique Digit Set
 

스도쿠 문제 풀이를 굳이 초급, 중급, 고급으로 나눈다면, 후보수없이 풀 수 있는 문제는 초급문제, 후보수를 이용하여 풀이하는 방법이라면 중급, 후보수를 이용한 방법 중 X-Wing, JellyFish, SwordFish 등은 고급문제라 할 수 있습니다.

이제 막 스도쿠에 입문하신 분이라면 가장먼저 스도쿠의 문제풀이 규칙을 충분히 이해하셔야 합니다.

이미 다 아시는 내용이겠지만, 스도쿠의 규칙을 요점만 정리해보겠습니다.

 

스도쿠의 규칙

스도쿠는 가로 9개의 칸, 세로 9개의 칸, 총 81개의 칸으로 구성되어 있습니다.

3 X 3 스도쿠가 기본이며, 4 X 4, 5 X 5 등의 문제도 있습니다.

스도쿠는 Box 단위 영역과, Row(가로) 단위 영역, Col(세로) 단위 영역으로 구분됩니다.

스도쿠를 구성하는 각 칸을 셀(Cell)이라 부릅니다.

 

 

 

Box1 영역부터 Box 9 영역까지 각각 1 부터 9 까지 중복이나 누락없이 채워야 합니다.

Row 1 영역부터 Row 9 영역까지 각각 1 부터 9 까지 중복이나 누락없이 채워야 합니다.

Col 1 영역부터 Col 9 영역까지 각각 1 부터 9 까지 중복이나 누락없이 채워야 합니다.

셀에 입력된 숫자는 Box, Row, Col 방향으로 겹치지 않아야 합니다.

최근에는 숫자 대신 알파벳이나, 그림으로 대체하여 문제를 풀어볼 수 있도록 변형한 경우도 있으며, 원리는 동일합니다.

이 규칙은 문제풀이의 가장 기본적인 규칙임과 동시에, 난이도가 높은 문제를 풀어가는데 유용하게 활용할 수 있는 원리이기도 합니다.

 

스도쿠 문제에서 가장 먼저 살펴야 할 것은 유일하게 입력되는 숫자를 찾아야 합니다.

특히, 초급문제에서는 유일한 숫자만으로 문제를 풀 수 있는 경우도 많습니다.

유일한 숫자를 찾는 방법으로는, 1부터 9까지의 숫자 중 빠진 하나의 숫자를 채우는 방법이고, 다른 하나는 스도쿠의 규칙을 활용하여 특정 셀에 꼭 들어갈 수 밖에 없는 숫자를 찾아 칸을 채우는 것입니다.

 

예제 문제를 통해 특정 셀에 입력되는 유일한 하나의 숫자를 찾는 방법(이하 Unique Digit Set이라 하겠습니다)을 설명드리겠습니다.

참고로, 설명에서는 다른 풀이법도 존재하지만 Unique Digit Set 풀이법에 대해서만 다루고 있습니다.

 

 

직접만들기 숫자배열 : 870104920000000000000700040500040000000200009290600410020000504930050001000809000

직접만들기 숫자배열은, 제가 개발하여 무료배포중인 스도쿠 문제풀이 프로그램에서 직접 만들기 메뉴를 이용하여 문제를 등록하고 문제풀이 혹은 정답을 찾을 수 있도록 입력되는 값입니다.
문제풀이 메뉴의 정답체크, 힌트보기, 자동완성 등을 이용하여 스도쿠 문제풀이를 연습하실 수 있습니다.

 

 

 

셀 G4를 예로 들겠습니다.

셀 G4에 입력되는 숫자를 찾으려면, 스도쿠의 규칙에 의거하여 회색 영역으로 표시된 위치에 입력하고자 하는 숫자가 입력되어 있지 않아야 합니다.

1부터 9까지 차례대로 회색 영역을 살펴(Scan) 입력된 값이 있는지 확인해야 합니다.

 

 

Scan 결과 1, 2, 4, 5, 6, 7, 8, 9는 모두 입력되어 있으므로, 셀에 입력될 수 없지만, 유일하게 숫자 3 한개만 남아있습니다.

 

 

이렇게 1부터 9까지의 숫자 중 유일하게 하나가 들어갈 수 있는 숫자가 있다면 그 숫자가 정답이며, 이런 방식으로 숫자를 찾아 문제를 푸는 방법을 Unique Digit Set 풀이법이라고 합니다.

셀 G4에 3이 셋팅됨에 따라 이어서 H4에도 숫자 4를 입력할 수 있습니다.

 

 

셀 G4에 3이 셋팅되지 않은 상태에서는 H4에 입력되는4의 값은 찾을 수 없습니다.

셀 G4에 3이 입력됨에 따라 D4에도 숫자 9가 유일하게 하나의 숫자가 들어갈 수 있는 Unique Digit Set 풀이법이 적용됩니다.

 

 

 

이런 방식으로 문제를 계속 풀어나가면 그림과 같이 Col 4 의 모든 숫자를 완성할 수 있습니다.

 

 

다른 예제 문제를 통해 다시 한번 설명드리겠습니다.

참고로, 이 예제에서도 다른 풀이법은 존재하지만 Unique Digit Set 풀이법에 대해서만 다루겠습니다.

 

 

 

직접만들기 숫자배열 : 000001092900200000006090010708509200000000000002010065200130700005000006100004030

이 예제에서는 셀 D8에 숫자 4를 입력할 수 있습니다.

 

 

셀 D8에 4가 입력됨에 따라 이어 셀 D5에도 유일하게 입력할 수 있는 하나의 숫자 6이 성립됩니다.

 

 

다음 문제에서는 셀 B4에 유일하게 입력할 수 있는 숫자가 존재합니다.

Unique Digit Set 풀이법을 이용하여 셀 B4에 입력되는 숫자는 무엇인지 여러분께서 직접 찾아보세요~^^*

 

 

 

다음 예제에서도 셀 두곳에 Unique Digit Set 풀이법을 이용하여 숫자를 입력(셋팅)할 수 있습니다.

셀 A1과 A3에 각각 입력되는 순서와 숫자가 무엇인지 여러분께서 직접 찾아보세요~^^*

 

 

이렇게 셋팅된 값을 기준으로 다시 유일한 숫자를 찾아 반복하시면 됩니다.

다음 두 문제는 Unique Digit Set 풀이법만으로 모두 풀 수 있는 문제입니다.

직접 풀어보세요

 

   

 

Unique Digit Set 풀이법을 적용시킬 때 가장 숫자가 많이 입력된 셀을 선택하는것이 요령입니다.

 

더 이상 동일한 풀이법으로 문제 풀이가 진전이 없다면 더 고급스러운 풀이법으로 문제를 풀어나가야겠죠?

이해가 안되거나 연습하시는데 어려움이 있으신 분은 언제든지 댓글로 올려주시면 설명드리겠습니다.

 

 

 

스도쿠 고수 만들기 문제풀이법은 계속 됩니다.

To be continue ...

 

ⓒ http://blog.daum.net/ibims

출처 : what is your wish
글쓴이 : IBelieve 원글보기
메모 :