도미노

도미노

보통

소개

Toyland에서는 기차들이 온 도시에 보물을 배달하느라 항상 바빠요. 반짝이는 구슬부터 희귀한 블록까지 말이죠. 기차가 달리는 선로는 알록달록한 도미노 모양 조각으로 되어 있고, 조각마다 두 개의 숫자가 적혀 있어요. 기차가 움직이려면 도미노 조각들이 숫자가 서로 맞는 완벽한 사슬을 이루어야 해요.

오늘은 희귀한 장난감의 긴급 배송이 보류되어 있어요. 살펴봐야 할 선로 조각 한 세트를 건네받았죠. 이 조각들이 끊김 없이 이어지는 사슬을 만들 수 있다면, 기차는 곧 출발해 Toyland 곳곳에 웃음을 전할 거예요. 그렇지 않으면 이 세트는 버려지고, 다른 세트로 다시 시도하게 돼요.

장난감들이 이 퍼즐을 풀어 주기를 손꼽아 기다리고 있어요. 도미노가 선로를 이어 기차를 굴려 보낼 수 있을까요? 아니면 이 세트는 그대로 남겨질까요?

지침

도미노 사슬을 만들어요.

주어진 도미노 타일들을 올바른 도미노 사슬이 되도록 순서를 정하는 방법을 계산해요. 사슬에서 한 타일의 한쪽 면에 있는 점은 이웃한 타일의 맞닿은 면에 있는 점과 일치해야 해요. 또한 이웃이 없는 타일, 즉 첫 번째와 마지막 타일의 면에 있는 점은 서로 일치해야 해요.

예를 들어 타일 [2|1], [2|3], [1|3]이 주어지면 [1|2] [2|3] [3|1]이나 [3|2] [2|1] [1|3], [1|3] [3|2] [2|1] 등과 같이 계산해야 하는데, 여기서 첫 번째와 마지막 숫자가 같아요.

타일 [1|2], [4|1], [2|3]의 경우 만들어지는 사슬은 유효하지 않아요. [4|1] [1|2] [2|3]의 첫 번째와 마지막 숫자가 같지 않아요. 4 != 3

일부 테스트 케이스는 사슬 해법에 중복된 타일을 사용할 수 있어요. 이 경우 여러 개의 도미노 세트를 사용한다고 가정해요.

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

도미노 문제를 시작해 볼 준비가 됐나요?

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