중급 30×30 노노그램 — 900칸에 펼쳐지는 최대 규모 논리
중급 30×30 노노그램은 가설 검증 없이도 풀 수 있는 가장 큰 체계적 노노그램 도전입니다. 900칸 그리드와 60줄 제약망, 그리고 중급 난도의 단서 밀도가 결합되어 전문적인 분석에 가까운 풀이 체계를 요구합니다. 구조화된 세션 관리, 6블록 줄 구성, 재귀적 구간 분석, 그리고 하나의 돌파가 남은 대부분의 그리드를 한 번의 긴 파동으로 해결할 수 있을 만큼 큰 규모의 연쇄 추적이 필요합니다. 이 일본식 크로스워드와 그리들러 퍼즐은 더 작은 그리드로는 만들 수 없는 규모의 연쇄 효과를 보여 줍니다.
60줄 관리 구조
30×30에서는 60줄을 관리하기 위해 블록 간 연쇄 추적이 명확한 6블록 구조가 필요합니다.
6블록 구성: 60개의 모든 줄을 10줄씩 6개 블록으로 나눕니다(블록 A: 1~5행과 해당하는 30개 열 등). 각 블록 안에서는 우선순위에 따라 정렬해 처리합니다. 블록 사이에서는 다음 블록으로 넘어가기 전에 확정된 모든 칸을 인접 블록의 제약 상태에 반영합니다. 두 번째 순회를 시작하기 전에 6블록 전체를 한 번 완주합니다.
블록 간 연쇄 우선순위: 블록 A의 추론으로 22열의 한 칸이 확정되면, 그 확정은 22열 전체를 갱신하며 이는 6개 블록의 행과 모두 교차합니다. 이런 블록 간 갱신을 추적하고, 다음 처리 주기에서는 가장 많이 갱신된 블록을 우선합니다. 연쇄 사슬을 효율적으로 관리하면 30×30에서는 한 번의 순회만으로 좌상단의 정보가 우하단까지 전달될 수 있습니다.
동적 여유도 임계값 조정: 1차 순회는 여유도 ≤ 6에서 시작합니다. 2차는 ≤ 10, 3차는 ≤ 15, 4차는 ≤ 20으로 올립니다. 각 순회에서 임계값을 넘는 줄은 보류합니다. 이렇게 하면 아직 유의미한 정보를 내지 못하는 줄에 분석을 낭비하지 않게 됩니다. 교차 참조 데이터가 쌓이면 1차에서 여유도가 높았던 줄도 3차나 4차에는 처리 가능한 수준으로 내려옵니다.
30칸 규모의 재귀적 구간 분석
30칸에서는 구간 분석이 표현할 수 있는 힘의 정점에 도달합니다. 30칸 줄에서 하나의 빈칸이 확정되기만 해도 15칸 또는 20칸짜리 구간이 생길 수 있으며, 이는 자체적으로 여유도 0인 구성을 가진 여러 블록의 단서 연속을 담기에 충분합니다. 재귀적 구간 겹침 기법은 반복적으로 적용됩니다. 블록을 구간에 배정하고, 구간 내부의 겹침을 계산한 뒤, 그 결과로 확정된 칸을 사용해 각 구간 안의 하위 구간을 찾아냅니다. 그런 다음 그 하위 구간에 다시 구간 분석을 적용하고, 더 이상 확정할 수 없을 때까지 계속합니다. 30칸 규모에서는 이 재귀적 적용만으로도 초기의 빈칸 하나에서 서른 칸 이상을 해결할 수 있습니다.
다음 단계
→ 30×30 하드 — 최대 규모에서 전체 배치 열거
→ 30×30 익스퍼트 — 900칸 전체를 휩쓰는 가설 연쇄
막혔나요? 30×30 노노그램 풀이기는 현재 교착 상태를 풀어 줄 구간 단계나 배치를 60개 모든 줄에서 찾아냅니다.