この記事では、Knuth's Algorithm X (DLX) の secondary column を使って、「全マスを埋めなくてもOK」なブロック配置問題を解く方法を紹介します。 Advent of Code 2025 Day12 の問題を題材に解説を行います。 Advent of Code の話 今年も 12月になり、 Advent of Code の季節がやってきました。例年は25日分開催されるところ、今年は12日と規模は縮小されましたが、こうやって続けられるのは素直に嬉しいですね。 今回はその中でも Day12: Christmas Tree Farm の問題を解くときに新しいアルゴリズムに出会ったときの話です。 問題設定について この問題の設定についてまず説明します。以下のようなブロックの定義が与えられます。 # がブロックで、 . が空きマスです。 これは「4x4 のグリッ

