Taking a Seat

Time Limit : 2 sec, Memory Limit : 262144 KB

A: 席取り - Taking a Seat -

物語

A君はある試験を受けるために試験会場の教室に入った。 ただ、A君はとても神経質なタイプだ。 そのため、状況によってA君が座りたくない席がもしかしたらあるかもしれない。 そこで、A君はある条件をもとに座れる席がいくつあるか調べることにした。

問題

A君は神経質なタイプの人間だ。 まず、A君は前から1行目の席には座れない。 というのも、試験監督の近くに座ると緊張してしまって問題が解けなくなる。 また、右隣か左隣に人がいるとA君は座れない。 テスト中に隣の鉛筆の音で集中できなくなってしまうからだ。 さらに、うるさい奴の近く (上下左右斜めの8近傍) には座れない。休憩中、声が頭に響いて休めないからだ。 あと、当たり前だがすでに生徒が座っている席は座れない。

この条件の中で果たしてA君が座れる場所があるだろうか。 教室の席はM × N個並んでいるとして、その個数を求めよう。

入力形式

1行目ではM (行数:縦の席数) とN (列数:横の席数) が与えられる。 2行目からM行、長さNの文字列が1行ずつ与えられる。i番目の文字列のj文字目はij列目の席の状態を表す。各文字は'-'、'x'、もしくは'o'のいずれかであり、空席を'-'、休憩中うるさい生徒が座る席を'x'、それ以外の生徒が座っている席を'o'とする。

制約

  • 0<M ≤ 100
  • 0<N ≤ 100

出力形式

条件によってA君が座れる席の個数を1行で出力せよ。最後に改行を忘れないこと。

入力例1

5 5
--o--
--xo-
--x--
o---x
--xoo

出力例1

3

入力例2

2 6
--oooo
x--o--

出力例2

1

入力例3

3 5
-----
-----
-----

出力例3

10

入力例4

4 6
o-oxoo
oo-ooo
oooxo-
o-ooox

出力例4

0

Note

Link
 
Source: Aizu Competitive Programming Camp 2016 Day3 , Japan, 2016-09-19