9월의 퍼즐에 참여해주신 모든 분들께 감사드리며,
참여해주신 분들 중 정답과 함께 좋은 풀이를 보내주신
김동현 님에게 문화상품권을 전달하겠습니다.
아래는 KPP 이충명님의 분석을 바탕으로 작성된 풀이입니다.
먼저 다음과 같이 조각에 번호를 매기자.
가장 먼저 해야 하는 일은 어떤 조각들이 조합되어야 3×3 석영 타일을 만들 수 있는가를 목록으로 만드는 것이다. 모든 경우의 수를 따져 보면 3×3 석영 타일을 만들 수 있는 조합은 총 8가지가 있다. 135, 145, 137, 147, 246, 38, 128, 1234가 그것이다. 같은 조각들을 가지고서도 여러 방법으로 3×3 석영 타일을 만들 수 있지만 그것은 중요하지 않다.
이제부터는 굳이 그림을 그리지 않고 조각들을 숫자로 표기하도록 하자. 처음으로 선택하기 가장 좋은 조각은 8가지 중 가장 다양한 조합에 사용되는 1번 조각일 것이다. (사실 1번이 아닌 다른 조각을 고르면 당신에게는 필승전략이 없다.)
가짓수를 나누기 전에 한 가지 생각해 볼 거리가 있다. 1번을 이미 고른 당신에게 조합 완성에 가장 큰 도움을 주는 조각은 3번 조각이다. 만약 당신이 여기서 3번까지 고른다면 135, 137, 38 세 가지를 동시에 노려볼 수 있기 때문이다. 따라서 충명이 첫 차례에 3번 조각을 골랐을 때와 다른 조각을 골랐을 때를 나누어 생각해 보자.
먼저 충명이 3번을 고를 경우를 보자. 당신은 충명이 38을 완성하는 것을 반드시 막아야 하므로 당신 차례에 8번을 고를 수밖에 없다.
당신은 128을 완성하기 직전이고, 이제 충명은 246을 완성하거나 당신이 어떤 조합도 완성하지 못하게 해야 한다. 만약 충명이 2번을 골라서 128의 완성을 방해할 경우, 당신이 4번을 고르면 조합 완성이 확정이다. 충명이 145의 완성과 147의 완성을 동시에 방해할 수는 없기 때문이다. 그렇다고 충명이 4번이나 다른 조각을 고른다면 당신은 2번을 골라서 128을 완성하면 된다. 어느 쪽이든 당신은 2번이나 4번 중 하나를 가져가기 때문에 충명이 만들 수 있었던 유일한 조합인 246이 깨지고, 따라서 충명이 3×3 석영 타일을 완성할지도 모른다는 걱정은 할 필요가 없다.
이제 충명이 3번이 아닌 다른 조각을 고를 경우를 생각해 보자. 충명이 뭘 고르든 당신은 다음에 3번을 고를 수 있으니 그렇게 하도록 하자. 그렇다면 충명이 3번을 제외한 조각 두 개를 가져간 뒤 당신의 차례가 되는 셈이다.
당신은 5번, 7번, 8번 중 하나만 있으면 135, 137, 38 중 하나의 조합이 완성되고, 충명은 당장 조각을 두 개만 고를 수 있으므로 충명이 당신의 조합 완성을 당장 방해하는 것은 불가능하다. 또한 충명이 완성할 수 있는 조합은 246이 유일하다는 것도 중요한 점이다.
만약 충명이 2번, 4번, 6번 중 두 개를 고른다면 당신은 충명의 246 완성을 방해하는 것이 급선무가 되므로 2번, 4번, 6번 중 남은 하나를 먼저 골라야만 한다. 그런 다음에는 충명이 뭘 고르든 당신 앞에 5번, 7번, 8번 중 두 개가 남아 있을 테니 아무거나 고르면 조합이 완성된다.
그 외의 경우, 당신은 급선무가 없으므로 5번, 7번, 8번 중 하나를 먼저 골라서 조합부터 완성하면 된다. 이제 충명이 뒤늦게 246을 완성하려 하더라도 당신의 마지막 차례에 2번, 4번, 6번 중 남아 있는 조각을 고르면 충명은 조합을 완성할 수 없게 된다.
빛나는 재치로 당신은 궁전의 대문을 아름답게 장식할 3×3 석영 타일을 완성해 오닉스 왕의 노여움을 피할 수 있었다. 얼마 후 당신은 너그러운 자수정 왕이 명을 다하지 못한 충명에게 오히려 수고했다며 포상을 내려주었다는 소식을 들었다. 당신은 자수정 나라로 귀화하기로 결심했다.
다음은 9월의 정답자로 선정된 김동현님의 풀이입니다.
1. 내가 1*1 타일을 먼저 선택한다.
그러면 나머지 타일들로 3*3타일을 만들 수 있는 방법은 (6개짜리 타일 + ㄱ자 모양 3개짜리 타일) 또는 (2*2타일 + 1*2타일 + 1*3타일) 두가지 경우의 수 뿐이다. 또한 1*1타일을 가지고 있는 상황에서 나는 (3개짜리 타일 하나와 5개짜리 타일 하나 어떤 것이든 가져온다면) 또는 (1*2짜리 타일 하나와 6개짜리 타일 하나를 가져온다면) 또는 (ㄱ자 타일하나와 6개짜리 타일 하나를 가져온다면) 3*3 타일을 조합할 수 있다.
이후 충명의 첫번째 선택에 따라 적절한 선택이 정해진다.
충명이 첫번째 선택에서
1) ㄱ자 모양 타일을 가져올 경우 나는 두번째 선택에서 6개짜리 타일을 선택해 충명을 방해한다.
i. 만약 충명이 두번째 선택에서 1*2타일을 선택해 나를 방해한다면, 나는 세번째 선택에서 1*3타일을 선택하고 이후 충명의 선택에 관계없이 네번째 선택에서 5개짜리 타일을 선택할 수 있으므로 나는 3*3타일을 만들 수 있다. 또한 이 경우 충명은 3*3타일을 만드는 데 실패할 수밖에 없다.(위에 설명했듯이 1*1타일이 없는 상황에서 3*3타일을 만들 수 있는 방법이 두가지밖에 없기 때문)
ii. 만약 충명이 두번째 선택에서 1*2타일을 고르지 않을 경우 나는 세번째 선택에서 1*2타일을 선택하여 3*3타일을 완성할 수 있다. 이 경우에도 충명은 3*3타일을 위와 같은 이유로 완성할 수 없다.
2) 1*3타일을 선택할 경우 or 6개짜리 타일을 가져올 경우 나는 두번째 선택에서 ㄱ자 모양 타일을 선택한다. 그러면 나는 이후 선택에서 5개짜리 어떤 것이든 선택하면 3*3타일을 완성할 수 있다.(5개 타일은 2개 있으므로 교대로 선택하는 상황에서 나는 무조건 하나를 확보할 수 있다.)
i. 만약 충명이 1*3타일을 선택한 후 2*2타일이나 1*2타일을 두번째 선택에서 가져간다면 나는 세번째 선택에서 나머지를 가져와 충명을 방해할 수 있으며 이후 선택에서 5개짜리 타일을 가져올 수 있으므로 목적을 달성할 수 있다.
ii. 만약 충명이 첫번째 선택에서 6개짜리 타일을 선택할 경우 내가 두번째 선택에서 ㄱ자 타일을 가져오는 순간, 충명은 3*3타일을 만들기 위해 3개의 타일이 더 필요하지만 나는 하나의 타일만 더 필요하기 때문에 나는 네번째 선택에서 충명을 방해할 수 있다.
3) 1*2타일을 선택할 경우 or 2*2타일을 선택할 경우 나는 두번째 선택에서 1*3타일을 가져온다. 그러면 충명이 3*3타일을 만들기 위해서는 두개의 타일(ㄱ자모양과 6개짜리 타일)이 필요하므로 나는 세번째 선택에서 충명을 방해할 수 있다. 만약 충명이 두번째 선택에서 5개짜리 타일을 가져온다 하더라도 5개짜리 타일은 하나 남아있기 때문에 나의 세번째 선택에서 가져올 수 있고, 네번째 선택에서 충명을 방해할 수 있다.
4) 5개짜리 타일을 선택할 경우 나는 두번째 선택에서 ㄱ자모양타일을 선택하면 된다. 그러면 충명은 3*3타일을 만들기 위해 3개의 타일이 더 필요하므로 네번째 선택에서 충명을 방해할 수 있다. 나는 남은 5개짜리 타일 또는 6개짜리 타일을 선택하면 3*3타일을 만들 수 있으므로 충명의 선택에 관계없이 3*3타일을 완성할 수 있다.