#P6878. [JOI 2020 Final] JJOOII 2
[JOI 2020 Final] JJOOII 2
题目描述
定义有连续 个 和连续 个 和连续 个 组成的字符串为 阶 JOI 串。
比如, 为 阶 JOI 串,但是,注意要有顺序,比如 就不是 阶 JOI 串。
现在,给定一个长度为 的字符串 ,可以对他进行 种操作:
- 操作 :删除 开头的字符
- 操作 :删除 结尾的字符
- 操作 :删除 除了开头和结尾之外的一个字符
我们要通过这些操作让 变为 阶 JOI 串。
但是,我们想让操作 尽量的少。
所以我们想知道,变为 阶 JOI 串操作 最少需要进行多少次?
如果不能变为 阶 JOI 串,那么输出 。
输入格式
第一行两个整数 代表字符串长度和要构造的 JOI 串的阶数。
第二行 个字符代表字符串 。
输出格式
一行一个整数代表操作 的最小进行次数。
如果不能变为 阶 JOI 串,那么输出 。
10 2
OJIJOIOIIJ
2
9 3
JJJOOOIII
0
9 1
IIIOOOJJJ
-1
提示
样例 1 解释
- 进行一次操作 ,变为 。
- 进行一次操作 ,变为 。
- 进行一次操作 ,删掉字符 ,变为 。
- 进行一次操作 ,删掉字符 ,变为 。
样例 2 解释
已经是 阶 JOI 串了,所以不需要进行操作。
样例 3 解释
无法变为 阶 JOI 串,无解。
数据规模与约定
本题采用捆绑测试。
- Subtask 1(1 pts):。
- Subtask 2(12 pts):。
- Subtask 3(87 pts):无特殊限制。
对于 的数据:
- 。
- 。
- 只包含 ,, 且长度为 。