트랙
/
Futhark
Futhark
/
연습 문제
/
킬러 스도쿠 도우미
킬러 스도쿠 도우미

킬러 스도쿠 도우미

어려움

지침

친구가 킬러 스도쿠(규칙은 아래에 있어요)를 푸는 법을 배우고 있는데, 어떤 숫자가 케이지에 들어갈 수 있는지 알아내는 데 어려움을 겪고 있어요. 그래서 주어진 케이지에 대한 모든 유효한 조합과 그 케이지에 영향을 주는 제약 조건을 나열하는 작은 프로그램을 작성해서 도와달라고 해요.

프로그램의 출력을 읽기 쉽게 만들려면, 프로그램이 반환하는 조합은 정렬되어 있어야 해요.

킬러 스도쿠 규칙

  • 표준 스도쿠 규칙이 적용돼요.
  • 보통 점선으로 표시되는 케이지 안의 숫자들을 더하면 케이지 모서리에 적힌 작은 숫자가 돼요.
  • 같은 숫자는 케이지 안에서 한 번만 나올 수 있어요.

더 자세한 설명은 이 가이드를 참고해요.

예시 1: 가능한 조합이 하나뿐인 케이지

합이 7인 세 칸짜리 케이지에는 유효한 조합이 124 하나뿐이에요.

  • 1 + 2 + 4 = 7
  • 232처럼 합이 7이 되는 다른 조합은 케이지 안에서 숫자를 반복하지 않는다는 규칙을 위반하게 돼요.

스도쿠 격자에 세 개의 킬러 케이지가 서로 묶인 것으로 표시되어 있어요. 첫 번째 킬러 케이지는 격자의 왼쪽 위 모서리에 있는 3×3 박스에 있어요. 그 박스의 가운데 열이 케이지를 이루며, 위에서 아래로 다음 칸들로 구성돼요. 첫 번째 칸에는 1과 7이라는 연필 표시가 있어 케이지 합이 7임을 나타내고, 두 번째 칸에는 2가, 세 번째 칸에는 5가 들어 있어요. 숫자들은 실수를 나타내기 위해 빨간색으로 강조되어 있어요. 두 번째 킬러 케이지는 격자의 중앙 3×3 박스에 있어요. 그 박스의 가운데 열이 케이지를 이루며, 위에서 아래로 다음 칸들로 구성돼요. 첫 번째 칸에는 1과 7이라는 연필 표시가 있어 케이지 합이 7임을 나타내고, 두 번째 칸에는 2가, 세 번째 칸에는 4가 들어 있어요. 이 케이지의 숫자 중 빨간색으로 강조된 것은 없으므로 실수가 없어요. 세 번째 킬러 케이지는 격자의 중앙 3×3 박스의 바깥 모서리를 따라가요. 다음 세 칸으로 이루어져 있어요. 케이지의 왼쪽 위 칸에는 빨간색으로 강조된 2와 케이지 합 7이 있어요. 케이지의 오른쪽 위 칸에는 3이 있어요. 케이지의 오른쪽 아래 칸에는 빨간색으로 강조된 2가 있어요. 나머지 칸은 모두 비어 있어요.

예시 2: 가능한 조합이 여러 개인 케이지

합이 10인 두 칸짜리 케이지에는 가능한 조합이 네 개 있어요:

  • 19
  • 28
  • 37
  • 46

스도쿠 격자로, 가운데 열인 5번째 열의 8개 행이 채워진 것을 제외하면 모든 칸이 비어 있어요. 위아래로 붙어 있는 두 행씩이 각각 킬러 케이지를 이루고 서로 묶인 것으로 표시되어 있어요. 위에서 아래로: 첫 번째 묶음은 값이 1인 칸과 케이지 합 10을 나타내는 연필 표시, 값이 9인 칸이에요. 두 번째 묶음은 값이 2인 칸과 10이라는 연필 표시, 값이 8인 칸이에요. 세 번째 묶음은 값이 3인 칸과 10이라는 연필 표시, 값이 7인 칸이에요. 네 번째 묶음은 값이 4인 칸과 10이라는 연필 표시, 값이 6인 칸이에요. 열의 마지막 칸은 비어 있어요.

예시 3: 가능한 조합이 여러 개지만 제약이 있는 케이지

합이 10인 두 칸짜리 케이지가 있고 그 열에 이미 1과 4가 들어 있다면, 가능한 조합은 두 개예요:

  • 28
  • 37

표준 스도쿠 규칙에 따라, 열에 있는 1과 4 때문에 19와 46은 불가능해요.

스도쿠 격자로, 가운데 열인 5번째 열의 8개 행이 채워진 것을 제외하면 모든 칸이 비어 있어요. 첫 번째 행에는 4가, 두 번째 행은 비어 있고, 세 번째 행에는 1이 들어 있어요. 1은 실수를 나타내기 위해 빨간색으로 강조되어 있어요. 열의 마지막 6개 행은 두 칸씩 짝을 이뤄 킬러 케이지를 이루고 있어요. 위에서 아래로: 첫 번째 묶음은 값이 2인 칸과 케이지 합 10을 나타내는 연필 표시, 값이 8인 칸이에요. 두 번째 묶음은 값이 3인 칸과 10이라는 연필 표시, 값이 7인 칸이에요. 세 번째 묶음은 빨간색으로 강조된 값이 1인 칸과 10이라는 연필 표시, 값이 9인 칸이에요.

직접 해보기

부담 없이 풀 수 있는 킬러 스도쿠를 한번 해보고 싶다면, Clover가 만든 이 퍼즐을 풀어봐요. 이 퍼즐은 2021년 6월 21일 Cracking The Cryptic의 Mark Goodliffe가 소개했어요.

다양한 난이도의 킬러 스도쿠는 수많은 신문은 물론 스도쿠 앱, 책, 웹사이트에서도 찾을 수 있어요.

출처

위 스크린샷은 Eric Fox가 만든 퍼즐 제작 도구인 F-Puzzles.com을 사용해 생성했어요.

GitHub에서 편집 링크가 새 창이나 탭에서 열려요
Futhark Exercism

킬러 스도쿠 도우미 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Futhark 트랙을 연습 문제 83개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.