「SWTR-5」String

题目描述

小 A 有一个字符串 $t$。他可以进行以下操作:切掉 $t$ 的一个前/后缀,满足切掉的前/后缀为**切割后** $t$ 的子串。小 A 想得到字符串 $s$,请问他最少需要进行多少次操作。无解输出 $-1$。

输入输出格式

输入格式


两行字符串分别表示 $t,s$。

输出格式


一行一个整数,表示答案。

输入输出样例

输入样例 #1

abbabb
ba

输出样例 #1

3

输入样例 #2

fxofoxxooffoxooo
fox

输出样例 #2

8

输入样例 #3

abcdefghijklmnopq
rstuvwxyzz

输出样例 #3

-1

输入样例 #4

ycxcy
cxy

输出样例 #4

-1

说明

「样例说明」 样例 $1$:$\texttt{abbabb}\to \texttt{abba}\to \texttt{bba}\to \texttt{ba}$。方案不唯一。 样例 $2$:$\texttt{fxofoxxooffoxooo}\to\texttt{xofoxxooffoxooo}\to\texttt{foxxooffoxooo}\to\texttt{xooffoxooo}\to\texttt{ffoxooo}\to\texttt{ffoxoo}\to\texttt{ffoxo}\to\texttt{ffox}\to\texttt{fox}$。方案不唯一。 「数据范围与约定」 **本题采用捆绑测试。** - Subtask 1(1 points):$s=t$。 - Subtask 2(9 points):$s$ 仅包含字母 $\texttt{a}$。 - Subtask 3(15 points):$|t|\leq 100$。 - Subtask 4(17 points):$|t|\leq 500$。 - Subtask 5(18 points):$|t|\leq 1.5\times 10^3$。 - Subtask 6(15 points):$|s|=4$,*数据随机。 - Subtask 7(25 points):无特殊限制。 对于 $100\%$ 的数据:$1 \leq |s| \leq |t| \leq 5\times 10^3$,字符集 $\in[\texttt{a,z}]$。 *数据随机:$s,t$ 字符均随机,字符集 $\in[\texttt{a,c}]$。 **请注意常数优化。** --- 「题目来源」 [Sweet Round 05](https://www.luogu.com.cn/contest/28195) E。 idea & solution:[Isaunoya](https://www.luogu.com.cn/user/96580) & [Alex_Wei](https://www.luogu.com.cn/user/123294)。