NAPC 2025 OPEN 2026/03/27 09:00 ~ 2026/03/27 14:15 5:15:00.000

C NASURA

問題
制限時間: 2 sec メモリ制限: 2048 MB
problem
問題文

最先端を司る神 NASURA は、情報科学・バイオサイエンス・物質創成科学の領域をそれぞれ専門とする $3$ つの頭を持っています。

NASURA は分身して $H \times W$ のグリッド状の迷宮を監視することになりました。 グリッドの上から $i$ 行目、左から $j$ 列目のマスをマス $(i,j)$ と表します。

グリッドの各マスは空きマスまたは壁マスのいずれかです。 各マスの情報は $H$ 個の長さ $W$ の文字列 $S_1,S_2,\dots,S_H$ で与えられ、$S_i$ の $j$ 文字目が . のときマス $(i,j)$ は空きマス、$S_i$ の $j$ 文字目が # のときマス $(i,j)$ は壁マスです。

あなたは、いくつかの空きマスに NASURA を配置します。$1$ 体の NASURA は、以下の範囲を同時に監視することができます。

  • NASURA 自身がいるマス
  • 上下左右の $4$ 方向のうち、NASURAの $3$ つの頭が向いている3方向にある、壁または他の NASURA にぶつかるまでの連続した空きマス

$4$ 方向のうち、どの $1$ 方向を死角(頭が向いていない方向)とするかは、配置する NASURA ごとに自由に決めることができます。ひとつのマスに配置できる NASURA は $1$ 体までです。

すべての空きマスを $1$ 体以上の NASURA で監視するために必要な、NASURA の最小個数を求めてください。

制約
  • $H,W$ は整数
  • $1 \leq H,W$
  • $H\times W \leq 100$
  • $S_i$ は .,# からなる長さ $W$ の文字列
入力

入力は以下の形式で標準入力から与えられます。

$H$ $W$
$S_1$
$\vdots$
$S_H$
出力

答えを出力してください。

入力例 1
3 3
.#.
...
.#.
出力例 1
2

例えば、以下のように配置します。 (⊢は死角が左方向の NASURA を、⊥は死角が下方向の NASURA を表します)。

.#.
⊢..
.#⊥

マス $(2,1)$ にある NASURA は以下の@のマスを監視できます。

@#.
@@@
@#.

マス $(3,3)$ にある NASURA は以下の@のマスを監視できます。

.#@
..@
.#@

よって、$2$ 体の NASURA ですべての空きマスを監視できます。 $2$ 体未満の NASURA ですべての空きマスを監視することはできません。

入力例 2
2 30
....##.#....#...#.#..#...#....
..#....#..#...#....#...#.#..#.
出力例 2
13