#P1511. Keyboarding
Keyboarding
Keyboarding
题目描述
Orange刚刚外出回到酒店,但在车上就把手机的电量全部耗尽了,于是他无聊的打开了酒店的电视,想找一些视频还缓解无聊的情绪。
但是他发现,这个电视遥控器只包含上 下 左 右 SEL这5个按键,他只能用屏幕上的虚拟键盘来进行打字。
现在,Orange将告诉你他想要搜索的视频名称,你需要回答他打印该名称最少需要按多少次按键。
形式化的说,给定一个 行 列的在电视上的"虚拟键盘",通过「上,下,左,右,SEL」共 5 个控制键,你可以移动电视屏幕上的光标来打印文本。一开始,光标在键盘的左上角,每次按方向键,光标总是跳到下一个在该方向上与当前位置不同的字符,若不存在则不移动。每次按SEL键,则将光标所在位置的字符打印出来。
现在求打印给定文本(要在结尾打印换行符)的最少按键次数。

输入格式
第一行输入 。 接下来给出一个 的键盘,包括大写字母,数字,横线以及星号(星号代表 Enter 换行)。 最后一行是要打印的文本串 。
数据范围
数据保证一定有解。
输出格式
输出一个整数表示答案。
样例 #1
样例输入 #1
4 7
ABCDEFG
HIJKLMN
OPQRSTU
VWXYZ**
CONTEST
样例输出 #1
30
提示
样例解释4
- 键入 A 1 次
- 下(X)右()右(Y)左()上(Z),移动 5 次
- 键入 Z 1 次
- 下(*)左(X)上(A),移动 3 次
- 键入 A 1 次
- 从 A 移动到 Z 5 次
- 键入 Z 1 次
- 下(*),移动 1 次
- 键入 * 1 次