트랙
/
Nim
Nim
/
연습 문제
/
얼룩말 퍼즐
얼룩말 퍼즐

얼룩말 퍼즐

보통

소개

얼룩말 퍼즐은 다섯 채의 집이 나오는 유명한 논리 퍼즐이에요. 집은 각각 다른 색으로 칠해져 있어요. 집에는 서로 다른 주민이 살고 있는데, 이들은 국적도 다르고, 키우는 반려동물도 다르고, 마시는 음료도 다르고, 피우는 담배 브랜드도 달라요.

퍼즐을 풀 수 있도록, 해답을 설명하는 문장 15개가 주어져요. 하지만 모든 문장의 정보를 조합해야만 퍼즐의 해답을 찾을 수 있어요.

Note

얼룩말 퍼즐은 제약 충족 문제(CSP)예요. 이런 제약 충족 문제에서는 가능한 값들의 집합과, 어떤 값이 유효한지 제한하는 제약 조건들의 집합이 있어요. 또 다른 유명한 제약 충족 문제로는 스도쿠가 있어요.

지침

얼룩말 퍼즐을 풀어서 다음 두 질문의 답을 찾아봐요:

  • 물을 마시는 주민은 누구일까요?
  • 얼룩말을 기르는 사람은 누구일까요?

퍼즐

다음 15가지 사실은 모두 참이라고 알려져 있어요:

  1. 집이 다섯 채 있어요.
  2. 영국인은 빨간색 집에 살아요.
  3. 스페인 사람은 개를 길러요.
  4. 초록색 집에서는 커피를 마셔요.
  5. 우크라이나인은 차를 마셔요.
  6. 초록색 집은 상아색 집 바로 오른쪽에 있어요.
  7. Old Gold를 피우는 사람은 달팽이를 길러요.
  8. 노란색 집에서는 Kools를 피워요.
  9. 가운데 집에서는 우유를 마셔요.
  10. 노르웨이인은 첫 번째 집에 살아요.
  11. Chesterfields를 피우는 사람은 여우를 기르는 사람 옆집에 살아요.
  12. Kools는 말이 있는 집 바로 옆집에서 피워요.
  13. Lucky Strike를 피우는 사람은 오렌지 주스를 마셔요.
  14. 일본인은 Parliaments를 피워요.
  15. 노르웨이인은 파란색 집 옆에 살아요.

또한 다섯 채의 집은 각각 다른 색으로 칠해져 있어요. 그리고 그곳에 사는 사람들은 국적도, 기르는 동물도, 마시는 음료도, 피우는 담배 브랜드도 모두 달라요.

Note

가능한 해답이 240억 가지(5!⁵ = 24,883,200,000)나 되니까, 최대한 많은 해답을 걸러내 봐요.


출처

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

얼룩말 퍼즐 문제를 시작해 볼 준비가 됐나요?

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

얼룩말 퍼즐 깊이 살펴보기!

가능한 풀이 240억 개 중에서 얼룩말 퍼즐의 정답을 찾아내는 여덟 가지 방법을 살펴봐요. 잘못된 순열을 최대한 빨리 걸러내는 방법부터 AC-3 알고리즘, 아주 간결한 논리 기반 풀이, 심지어 유전 알고리즘까지 다뤄요!