#joi2012ho1. [joi2012ho1]JJOOII (JJOOII)
[joi2012ho1]JJOOII (JJOOII)
题目描述
你正在为 JOI (日本情报奥林匹克) 的决赛做编程练习。你注意到今年 JOI 的预选赛只出了涉及数值的问题,没有涉及字符串的问题。因此,你决定悄悄地提升自己在字符串问题上的能力,以拉开与对手的差距。
当你浏览 JOI 的过去题目时,你发现需要熟悉由 J
、O
、I
三种字符组成的字符串。因此,你开始思考与这样的字符串相关的问题。你想出了一个问题:“给定一个字符串,请判断它是否包含子串 JOI
”。然而,你很快就解决了这个问题。你希望能解决一个更高级别的问题,于是你设计了以下问题。
字符串 是字符串 的子串,当且仅当在 的开头和结尾添加零个或多个字符(可以是0个字符),得到字符串 。例如,JJOOII
是 OJJOOIIOJOI
的子串,但 JOI
不是 JOOI
的子串。
对于非负整数 ,级别为 的 JOI 序列指的是,按照顺序连接 个字符 J
, 个字符 O
, 个字符 I
的字符串。例如,JJOOII
是级别为 的 JOI 序列。
你想找出给定字符串的 JOI 序列中级别最大的子串。
任务
给定一个由 J
、O
、I
三种字符组成的长度为 的字符串 ,编写一个程序,求出字符串 中 JOI 序列的最大级别 。
限制条件
输入
从标准输入读取以下数据:
- 第 行:包含由
J
、O
、I
三种字符组成的字符串 。
输出
将表示 JOI 序列的最大级别 的整数以一行输出到标准输出。
评分标准
对于评分用数据集中的 % 的数据,保证 。
输入样例 1
OJJOOIIOJOI
输出样例 1
2
OJJOOIIOJOI
包含级别为 的 JOI 序列 JJOOII
作为子串,并且不包含级别为 或更高的 JOI 序列作为子串。
输入样例 2
IJJIIJJJ
输出样例 2
0
级别为 的 JOI 序列是长度为 的字符串。
输入样例 3
JOIJOIJOIJOIJOI
输出样例 3
1
输入样例 4
OOJJJJJJJOOOOIIIII
输出样例 4
4