낙자보드
작성자 운영자 조회수 2084
제목 네모네모 게임방법
내용
(그림 및 방법 출처 : Wikipedia - Nonogram)
우선 할 수 있는 일은 반드시 채워지는 공간을 알아내는 것입니다.
가로 방향으로 열 칸짜리 로직에서 숫자 8이 있다면, 그 줄은 빈칸 2칸과 채워지는 칸 8칸이 있다는 뜻입니다.
8이 위치할 수 있는 방법은 가장 왼쪽에서부터 채워지는 것부터 빈칸을 두 칸 띄우고 가장 오른쪽에 채워지는 것까지 총 세 가지가 있습니다.(8-2, 1-8-1, 2-8 식으로 세 가지)
모든 경우를 고려하면 반드시 채워지는 교집합 부분이 생깁니다. 간단하게 계산하는 방법은 가장 왼쪽에 위치하는 경우와 가장 오른쪽에 위치하는 경우를 놓고 공통된 부분을 체크하는 것입니다.

이것을 응용하면 숫자가 나눠져있는 경우에도 사용할 수 있습니다.
앞의 설명 그림에서는 4와 3이 동시에 움직이는 모습을 보여주지만, 하나씩 생각할 수 있습니다.
우선 4가 가장 왼쪽에 있다고 생각하면, 4 다음에는 꼭 빈 칸이 한 칸 옵니다.
남은 다섯칸 중에서 3이 배치되는 방법은 3-2, 1-3-1. 2-3의 세 가지 경우입니다. 모든 경우에서 공통되는 부분은 가운데 한 칸(그림에서 오른쪽에 있는 파란색 네모 부분)입니다.
반대로 3을 가장 오른쪽에 붙여놓고, 4가 움직일 수 있는 범위 중에서 교집합 부분을 생각하면 왼쪽의 파란 두 칸이 나오게 됩니다.

아무 것도 없어야 하는 공간을 찾는 방법도 있습니다.
앞 그림의 상황은 네번째 칸과 아홉 번째 칸이 이미 해결되어 색이 칠해진 상황입니다.
칠해진 네번째 칸은 3의 일부분입니다.3이 위치하는 경우는 가장 왼쪽에 있는 경우 (2 + 칠해진 네번째 칸 1)부터 가장 오른쪽에 있는 경우까지 세 가지입니다.(2+1, 1+1+1, 1+2 같은 방법으로 세 가지)
가장 왼쪽에 위치하는 경우에도 첫번째 칸은 빈 칸이 될 수밖에 없으니까 X 표시를 해둡니다.
다음으로 아홉번째 칸에 칠해진 부분이 1이라는 것이 밝혀진 상황이기 때문에 1의 왼쪽과 오른쪽으로 X 표시를 합니다.
3이 가장 오른쪽으로 가는 경우에도 일곱번째 칸까지는 갈 수 없습니다. 3이 아니라면 그 칸에 있을 수 있는 숫자는 없기 때문에 일곱번째 칸은 빈 칸이 됩니다.

그림과 같이 X가 위치한다면 가운데는 1이 아닌 이상 들어갈 수 없습니다.
3과 2 이외에 다른 숫자는 없으므로 일단 가운데 부분에 X 표시를 합니다.
왼쪽으로는 네 칸, 오른쪽으로는 세 칸의 빈 공간이 남습니다. 한 쪽에 3과 2가 동시에 들어갈 수는 없기 때문에 왼쪽은 3, 오른쪽은 2가 들어갈 공간이 됩니다.
교집합을 찾는 방법을 적용하면 파란색처럼 왼쪽 두 칸, 오른쪽 한 칸이 채워집니다.

그림과 같이 세번째 칸이 밝혀진 상황이면 네번째와 다섯번째 칸은 칠해질 수밖에 없습니다.
5는 한 덩어리이기 때문에 세번째 칸이 5의 오른쪽 마지막 부분이 될 수 없기 때문입니다. (5가 가장 왼쪽으로 위치하는 경우를 생각했을 때 첫번째 칸 왼쪽 너머로 색칠할 수는 없습니다. 5가 있을 수 있는 모든 경우를 생각해보면 실질적으로 세 칸이 칠해진 상황과 지금 상황은 같은 상황입니다.)
중간에 X가 있는 경우에도 마찬가지로 적용할 수 있습니다.
3이 한 덩어리이기 때문에 파란색 공간은 칠해져야 하는 자리입니다.

위 그림처럼 밝혀졌다면, 각자 어떤 숫자에 해당하는지 알 수 있다.
제일 왼쪽부터 생각해보면, 세번째와 네번째 칸이 2라면 5가 있을 곳이 없습니다. 그렇기 때문에 세번째와 네번째칸은 5의 일부분입니다.
열한번째와 열세번째 칸이 칠해진 상태이고 둘이 만난다면 존재하지 않는 3이 생겨납니다. 그렇기 때문에 열한번째와 열 세번째는 서로 다른 두 숫자 2와 2가 됩니다.
여섯번째와 일곱번째칸은 2가 아니라는 것이 밝혀졌기 때문에 세번째와 네번째칸과 함께 5의 일부라는 것을 알 수 있습니다.색칠해서 5를 만듭니다.
열한번째와 열세번째 칸은 서로 다른 숫자이기 때문에 가운데(열두번째칸)에는 아무 것도 올 수 없습니다. X 표시를 합니다.
자연스럽게 열번째와 열네번째 칸을 칠할 수밖에 없습니다. 5, 2, 2가 모두 밝혀졌습니다

아무 것도 없는 공간을 찾는 다른 방법입니다.
4는 왼쪽, 가운데, 오른쪽의 세 가지 경우로 배치할 수 있습니다. 왼쪽으로 배치되는 경우에도 첫번째와 두번째칸까지는 가지 않으므로 그곳은 X입니다.
가장 오른쪽으로 배치되는 경우에도 마찬가지로 우측에 두 개의 X가 쳐지게 됩니다.