3228: WOTOJO序列

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:33 解决:23

题目描述

## 题目背景 **子序列**:是指在序列中选择某些元素,按照序列中的顺序连接在一起形成的。比如 `wtj`、`wj`、`wot`、`wto` 都是 `wotojo` 的子序列。但 `owt` 这个序列不是。我们定义子序列长度为子序列中包含的元素数量,比如 `wtj` 的长度为 $3$,`wj` 的长度为 $2$。如果没有特殊说明,空序列和整个序列都是原序列的一个子序列。我们一般会用非空子序列来排除空序列,用真子序列来排除整个序列,用非空真子序列来同时排除两个。


 **子串**:是指在序列中选择**连续**的某些元素,按照序列中的顺序连接在一起形成的,所以子串也常被称作连续子序列。比如 `wot`、`oto` 都是 `wotojo` 的子串。但 `wtj` 不是。与子序列相同,子串包含的元素个数也被称为子串的长度,同时也有“非空”、“真”等描述方法。 ## 题目描述 现在 33DAI 得到了一个仅包含英文小写字母的字符串 $s$,33DAI 想要在其中找到一个子串 $t$,使得 `wotojo` 是 $t$ 的子序列。显然有可能有多个这样的 $t$,33DAI 想要一个知道最短的 $t$ 的长度是多少。 比如当 $s$ 为 `wwowoxtoyjotojo` 时,子串 `wowoxtoyjo`、`woxtoyjotojo`、`woxtoyjo` 等都包含子序列 `wotojo`。其中最短的是 `woxtoyjo`,长度为 `8`。 ``` wwowoxtoyjotojo ** ** ** ^^^^^^^^ ``` ## 输入格式 输入一行,即字符串 $s$。 ## 输出格式 一行一个整数,表示 $t$ 最小长度。 ```input1 wwowoxtoyjotojo ``` ```output1 8 ``` ## 数据规模与约定 对于 $100\%$ 的数据,保证:$s$ 中仅包含小写英文字母且包含子序列 `wotojo`,$1\le |s|\le 1000$。其中 $|s|$ 表示字符串 $s$ 的长度。 - 子任务 1($30$ 分):保证 $|s|\le 20$ - 子任务 2($30$ 分):保证 $s$ 中 `w`、`t`、`j` 三个字符都只出现一次,`o` 只出现了三次。换言之,$s$ 中仅有一个子序列是 `wotojo`。 - 子任务 3($40$ 分):无特殊限制

样例输入 复制

wwowoxtoyjotojo

样例输出 复制

8