第2回早稲田大学プログラミングコンテスト

B - 雨上がり


Time limit時間制限 : 2sec / Memory limitメモリ制限 : 64MB

 雨が上がった.そろそろ大学に行こう.

問題

 僕の家から大学までは一本道の道路で結ばれている.道路は区間に分けることができ,ここでは,道路を一行の文字列で表すことにする.各文字が1つの区間に相当し,1文字目が家の前の区間,最後の文字が大学の前の区間を表している.

 ここで,各文字の意味は次のとおりである.
 . : 普通の区間
 X : 水たまりのある区間
 僕は家の前の区間からスタートし大学へ向かう.僕は現在位置から1つ,2つ,もしくは3つ先の区間(大学のある方向)へ進むことができる.もし,移動した先の区間に水たまりがある場合,僕は水たまりを踏むはめになる.買ったばかりの靴を汚したくないので,なるだけ水たまりを避けたい.また,大学の前の道路を超えて移動するようなことはできない.

 家の前の道路から大学の前の道路まで適切な進み方で向かうとき,最低限踏まなければならない水たまりの数を求めてほしい.

入力

入力は以下の形式で標準入力から与えられる.
N
S
  • 1 行目に区間の数を表す N(3 ≦ N ≦ 100) が与えられる.
  • 2 行目には,N 文字の文字列 S が与えられる.これらは道路の区間のデータである.
  • S に出現する文字は '.', 'X' のいずれかであり,意味は上に記した通りである.
  • S の最初と最後の文字は必ず '.' である.

出力

最低限踏まなければならない水たまりの数を標準出力に 1 行で出力せよ.
なお、最後には改行を出力せよ.

入力例 1

5
.XXX.

出力例 1

1

入力例 2

10
.X.XXXXXX.

出力例 2

2

入力例 3

7
.......

出力例 3

0

Submit提出する