#joi2012ho1. [joi2012ho1]JJOOII (JJOOII)

[joi2012ho1]JJOOII (JJOOII)

题目描述

你正在为 JOI (日本情报奥林匹克) 的决赛做编程练习。你注意到今年 JOI 的预选赛只出了涉及数值的问题,没有涉及字符串的问题。因此,你决定悄悄地提升自己在字符串问题上的能力,以拉开与对手的差距。

当你浏览 JOI 的过去题目时,你发现需要熟悉由 JOI 三种字符组成的字符串。因此,你开始思考与这样的字符串相关的问题。你想出了一个问题:“给定一个字符串,请判断它是否包含子串 JOI”。然而,你很快就解决了这个问题。你希望能解决一个更高级别的问题,于是你设计了以下问题。

字符串 tt 是字符串 ss子串,当且仅当在 tt 的开头和结尾添加零个或多个字符(可以是0个字符),得到字符串 ss。例如,JJOOIIOJJOOIIOJOI 的子串,但 JOI 不是 JOOI 的子串。

对于非负整数 kk级别为 kk 的 JOI 序列指的是,按照顺序连接 kk 个字符 Jkk 个字符 Okk 个字符 I 的字符串。例如,JJOOII 是级别为 22 的 JOI 序列。

你想找出给定字符串的 JOI 序列中级别最大的子串。

任务

给定一个由 JOI 三种字符组成的长度为 NN 的字符串 SS,编写一个程序,求出字符串 SS 中 JOI 序列的最大级别 kk

限制条件

1N1000000(=106)1 \leq N \leq 1000000 \,(= 10^6)


输入

从标准输入读取以下数据:

  • 11 行:包含由 JOI 三种字符组成的字符串 SS

输出

将表示 JOI 序列的最大级别 kk 的整数以一行输出到标准输出。

评分标准

对于评分用数据集中的 2020% 的数据,保证 N100N \leq 100


输入样例 1

OJJOOIIOJOI

输出样例 1

2

OJJOOIIOJOI 包含级别为 22 的 JOI 序列 JJOOII 作为子串,并且不包含级别为 33 或更高的 JOI 序列作为子串。


输入样例 2

IJJIIJJJ

输出样例 2

0

级别为 00 的 JOI 序列是长度为 00 的字符串。


输入样例 3

JOIJOIJOIJOIJOI

输出样例 3

1

输入样例 4

OOJJJJJJJOOOOIIIII

输出样例 4

4