#6025. 环形密码

环形密码

题目描述

某实验室使用了一种特殊的环形密码锁来保护设备安全。 密码锁由一个圆环组成,圆环上均匀分布着若干个小写字母(任意两个小写字母之间的距离相同),首尾相连,形成一个闭合的圆环。

密码锁仅支持旋转操作:将当前圆环整体顺时针或逆时针旋转一格(每次只能旋转一格)。无论怎样旋转,始终有一个字母位于圆环的最上方。 从位于最上方的字母开始,顺时针读取出来的字符串,为当前密码锁的密码。

例如,当前圆环显示的状态为:

   a
e     b
 d   c

从位于最上方的字母 a 开始,顺时针读取出来的密码为:abcde

如果将圆环顺时针旋转一格,则密码锁的显示状态变为:

   e
d     a
 c   b

此时,从位于最上方的字母 e 开始,顺时针读取出来的密码为:eabcd

将初始密码为 abcde 的密码锁,逆时针旋转一格,则密码锁的显示状态变为:

   b
a     c
 e   d

此时,从位于最上端的字母 b 读取出来的密码为:bcdea

现给定密码锁的初始密码和经过若干次旋转后的得到的目标密码,请你编程计算出:在每一次旋转可以任意选择顺时针或逆时针旋转一格的前提下,最少旋转多少次,才能得到该目标密码。

输入格式

第 1 行读入仅由小写字母组成的字符串 SS,表示密码锁的初始密码。 第 2 行读入仅由小写字母组成的字符串 TT,表示密码锁经过若干次旋转后的目标密码。

输出格式

输出一个整数,代表最少需要旋转的次数。

样例输入 1

abcde
deabc

样例输出 1

2

样例输入 2

qrmldzobnecvk
mldzobnecvkqr

样例输出 2

2

样例输入 3

sjnmwqogfdyzleauhir
zleauhirsjnmwqogfdy

样例输出 3

8

说明/提示

样例解释 1

初始密码为 abcde,目标密码为 deabc。 旋转过程如下: 第 1 次顺时针旋转:abcde → eabcd。 第 2 次顺时针旋转:eabcd → deabc。 最少需要 2 次旋转,因此输出 22

数据规模与约定

对于 100%100\% 的数据,满足字符串 SSTT 的长度在 [3,26][3, 26] 的范围内。 测试数据保证:字符串仅由小写英文字母组成,初始密码经过若干次旋转一定能得到目标密码,且初始密码、目标密码均由不同的小写字母组成。