题目名称 3862. [USACO23 Jan Bronze] Moo Operations
输入输出 moocaozuo.in/out
难度等级 ★☆
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 11
题目来源 GravatarBenjamin 于2023-03-27加入
开放分组 全部用户
提交状态
分类标签
思维 字符串
分享题解
通过:1, 提交:2, 通过率:50%
Gravatarムラサメ 100 0.000 s 0.00 MiB C++
Gravatarムラサメ 0 0.000 s 0.00 MiB C++
本题关联比赛
4043级2023省选模拟赛5
关于 Moo Operations 的近10条评论(全部评论)

3862. [USACO23 Jan Bronze] Moo Operations

★☆   输入文件:moocaozuo.in   输出文件:moocaozuo.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

给定一个字符串,其中的每个字符要么是 $M$,要么是 $O$。

你可以通过以下操作将该字符串变为 $MOO$:

   改变字符串中的第一个或最后一个字符($M$ 变为 $O$,$O$ 变为 $M$)。

   删除字符串中的第一个或最后一个字符。


请你计算,为了将给定字符串变成 $MOO$,所需要的最少操作次数。

【输入格式】

第一行包含整数 $Q$,表示共有 $Q$ 组测试数据。

每组数据占一行,包含一个字符串,其中的每个字符要么是 $M$,要么是 $O$。

【输出格式】

每组数据输出一行结果,一个整数,表示所需要的最少操作次数。如果无解,则输出 -1。

【样例输入】

3
MOMMOM
MMO
MOO

【样例输出】

4
-1
0

【样例说明】

第一个字符串 $MOMMOM$ 变为 $MOO$ 最少需要 $4$ 步操作,一种可行方案为:

   将最后一个字符变为 $O$。

   删除第一个字符。

   删除第一个字符。

   删除第一个字符。

第二个字符串无法变为 $MOO$。

第三个字符串已经是 $MOO$,无需任何操作。

【数据规模与约定】

测试点 $2 \sim 4$:字符串长度不超过 $3$;

对于 $100\%$ 的数据,$1≤Q≤100$,每个字符串的长度范围 $[1,100]$。