#219. AKIOI

AKIOI

题目描述

有一个字符串 A,长度为 K,仅包含大写字母 ‘O’、‘I’ 两种字符。

现在要找 A 的一个子段,使得该子段中含有的 ‘I’ 的个数恰好是 ‘O’ 的个数的 2 倍。

请你找出满足条件的最长的一个子段,输出它的长度。如果找不到满足条件的子段,则输出整数 0。

所谓子段,是指由原字符串中连续的一段字符构成的字符串。注意:字符串本身也是自己的一个子段。

输入

第一行:包含一个整数 K

第二行:一个长度为 K 的字符串 A,仅包含大写字母 OI 两种字符。

输出

一个整数,表示满足条件的最长子段的长度。

样例1输入

10
IOIOIOIIOI

样例1输出

6

样例1解释

样例给出的字符串为:IOIOIOIIOI,其中第 3 ~ 8 个字符组成的子段 IOIOII 满足条件,该子段的长度为 6。

另外,第 5 ~ 10 个字符组成的子段 IOIIOI 也满足条件,长度也为 6。

你找不到更长的满足条件的子段。

样例2输入

6
OOIOOI

样例2输出

0

样例2解释

样例给出的字符串为:OOIOOI,找不到满足条件的子段。

样例3输入

22
IOOOIIOIIIOOOIIIIIIOOI

样例3输出

18

数据范围

10% 的数据:1 ≤ K ≤ 200

30% 的数据:1 ≤ K ≤ 2 × 10^3

60% 的数据:1 ≤ K ≤ 2 × 10^5

100% 的数据:1 ≤ K ≤ 2 × 10^7,数据保证输入字符串仅包含大写字母 OI 两种字符。

提示

本题有的测试点数据量较大,请使用较快的读取方式。