AT_jsc2026_final_f Four Shelters
Description
$ H $ 行 $ W $ 列のマス目があります。 $ i $ 行目 $ j $ 列目のマスを $ (i,j) $ と表します。
$ H $ 個の長さ $ W $ の文字列 $ S_1,S_2,\ldots,S_H $ が与えられます。 $ S_i $ の $ j $ 文字目が `o` であるようなマス $ (i,j) $ のうち相異なる $ 4 $ マスを選び、それぞれに避難所を $ 1 $ つ設置します。
避難所の配置が良い配置であるとは、全てのマスについて、そのマスからのマンハッタン距離が最小となる避難所がちょうど $ 1 $ つ存在することをいいます。
良い配置の個数を求めてください。 ただし、避難所同士に区別はありません。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ H $ $ W $ $ S_1 $ $ S_2 $ $ \vdots $ $ S_H $
Output Format
良い配置の個数を出力せよ。
Explanation/Hint
### Sample Explanation 1
避難所を設置できるマスは $ 5 $ マスあります。 このうち、マス $ (1,1) $ 以外の $ 4 $ マスに避難所を設置するような配置が唯一の良い配置となります。
例えば、マス $ (1,3) $ 以外の $ 4 $ マスに避難所を設置した場合は、マス $ (1,4) $ から最も近い避難所がマス $ (2,3) $ とマス $ (1,6) $ の $ 2 $ 箇所であるため、これは良い配置ではありません。
### Constraints
- $ 1 \le H,W \le 500 $
- $ S_i $ は `o`, `.` のみからなる長さ $ W $ の文字列
- $ H,W $ は整数