#P9856. [CCC 2008 J3] GPS Text Entry

[CCC 2008 J3] GPS Text Entry

Description

在生日时,Sandy 收到了一个全球定位系统(GPS)设备,这是一种电子设备,她可以用来追踪本地的徒步旅行路线。途中,Sandy 可以标记航点,并在回家后将其记录在地图上。每个航点的描述可以输入到设备中,但设备没有键盘。相反,它有四个光标按钮:上、下、左、右,以及一个接受字母的按钮。键盘看起来如下:

屏幕显示了可以用来“输入”描述的字母和符号的网格。网格布局如下:

当你输入航点的名称时,光标从 A 开始。你必须将光标移动到下一个字母或符号的位置,然后接受该字母。光标只能水平或垂直移动到相邻的方格(不能对角线移动)。一旦你输入了描述中的所有字母,你需要将光标移动到 enter 并接受整个短语。

你需要编写一个程序来计算输入一个短语所需的光标移动次数。例如,要输入单词 GPS,从 A 位置开始,你需要向下移动 11 次选择 G,然后向右移动 33 次并向下移动 11 次选择 P,然后向下移动 11 次并向左移动 33 次选择 S,最后向下移动 11 次并向右移动 55 次选择 enter。这总共需要 1515 次光标移动。注意,总的光标移动次数不会因为你选择先向下再向右或先向右再向下而改变。还要注意,你不能超出网格的边界(例如,你不能移出网格或“环绕”网格)。

Input Format

你的程序的输入将是一个最多 4040 个字符的字符串。你可以假设字符串中的所有字符都包含在网格中。

Output Format

你的程序的输出将是一个整数,即使用给定网格布局输入字符串所需的光标移动总数。

GPS
15
ECHO ROCK
29

Hint

数据保证合法。

题面翻译由 ChatGPT-4o 提供。