AT_indeednow_2015_qualb_2 高橋くんと文字列操作

题目描述

高桥君有一个字符串 $s$,他想要构造一个字符串 $t$。高桥君可以对字符串 $s$ 进行如下操作:将末尾的 $1$ 个字符添加到字符串的开头,并删除末尾的 $1$ 个字符。高桥君希望通过若干次这样的操作,将字符串 $s$ 变为字符串 $t$。 请你编写程序,输出将字符串 $s$ 变为字符串 $t$ 所需的最小操作次数。如果无法通过上述操作将 $s$ 变为 $t$,则输出 $-1$。

输入格式

输入从标准输入中读取,格式如下: > $s$ > $t$ - 第 $1$ 行是高桥君拥有的字符串 $s$,满足 $1 \leq |s| \leq 1,000$,其中 $|s|$ 表示字符串 $s$ 的长度。$s$ 仅由小写英文字母 a-z 组成。 - 第 $2$ 行是高桥君想要得到的字符串 $t$,满足 $1 \leq |t| \leq 1,000$,$t$ 仅由小写英文字母 a-z 组成。

输出格式

输出一行,表示将字符串 $s$ 变为字符串 $t$ 所需的最小操作次数。 请不要忘记输出行末的换行符。

说明/提示

### 样例解释 1 将 `abcd` 的末尾字符添加到开头后,变为 `dabcd`,再删除末尾字符后,得到 `dabc`。因此,只需 $1$ 次操作即可使 $s$ 等于 $t$。 ### 样例解释 2 对 $s$ 进行 $2$ 次题目中的操作后,可以得到 $t$。虽然进行 $5$ 次或 $8$ 次操作也可以得到 $t$,但需要输出最小的操作次数。 由 ChatGPT 4.1 翻译