Skip to content

IOI 文字列 (IOI String)

Unrated
日本語

Language

Contribute a translation
Time limit
2000 ms
Memory limit
1024 MB
Submissions
0
Correct
0
Solved by
0
AC rate
—

Statement

長さが奇数 \(N\) の文字列 \(S\) が与えられる.\(S\) の各文字は英大文字である.

IOI 文字列とは次の条件をすべて満たす文字列である.

  • 長さが奇数である.
  • 各文字は I または O で,これらが交互に連なる.
  • \(1\) 文字目は I である.

例えば,I,IOI,IOIOIOI は IOI 文字列であるが,JOI,IIOOII,OIOIO は IOI 文字列ではない.

あなたは次の操作を \(0\) 回以上繰り返すことができる.

  • 文字列 \(S\) の文字を \(1\) つ選び,好きな英大文字に変更する.

文字列 \(S\) を IOI 文字列にするのに必要な操作の回数の最小値を求めよ.

Constraints

  • \(1 \leqq N \leqq 99\).
  • \(N\) は奇数である.
  • \(S\) は長さ \(N\) の文字列である.
  • \(S\) の各文字は英大文字である.

Input

入力は以下の形式で標準入力から与えられる.

\(N\)
\(S\)

Output

文字列 \(S\) を IOI 文字列にするのに必要な操作の回数の最小値を出力せよ.

Examples

Sample input 1
5
JJOOI
Sample output 1
3

例えば,次のように操作することで, \(3\) 回の操作により \(S\) を IOI 文字列にできる.

  1. \(S\) の \(1\) 文字目を I に変更する.
  2. \(S\) の \(2\) 文字目を O に変更する.
  3. \(S\) の \(3\) 文字目を I に変更する.

\(3\) 回未満の操作で \(S\) を IOI 文字列にすることはできないため,\(3\) を出力する.

Sample input 2
7
IOIOIOI
Sample output 2
0

操作が必要ないこともある.

Sample input 3
7
BEAVERS
Sample output 3
7
Sample input 4
5
OIOIO
Sample output 4
5

Notes

Tags

No tags yet

Source