a759. CPE:Keyboarding (UVa 1714)

困難CPE

時間限制 2000 ms ・ 記憶體限制 256 MB

題目描述

虛擬鍵盤是一個矩形網格,每個按鍵佔據一個或多個互相連通的單位格。同一個字元只對應一個按鍵,但該按鍵可能包含多格。 游標一開始位於左上角。硬體只有上、下、左、右及選取五個按鈕,每按一次都算一次按鍵操作。 按方向鍵時,游標沿該方向越過所有仍屬於目前按鍵的格子,停在該方向第一個屬於不同按鍵的格子;若該方向直到邊界都沒有不同按鍵,游標不移動。選取則將目前按鍵的字元加到輸入文字尾端。 輸入完指定文字後,還必須移到以 * 表示的 Enter 按鍵並選取它。請求完成全部輸入所需的最少操作次數。

輸入格式

多筆資料,讀至檔案結尾。每筆第一行為 r c,1 ≤ r, c ≤ 50。接著 r 行,每行 c 個字元,表示鍵盤。 鍵盤字元只可能是大寫英文字母、數字、- 與 *,同字元的所有格子保證形成連通區域。 最後一行是要輸入的非空文字,長度不超過 10000,只含鍵盤上可用且不是 * 的字元。保證文字可被輸入。

輸出格式

每筆輸出一行最少操作次數,包含所有方向鍵、每個字元的選取,以及最後選取 Enter 的操作。

題目來源:UVa 1714 — Keyboarding。 原題:https://onlinejudge.org/external/17/1714.pdf

範例測資

範例輸入 1

4 7
ABCDEFG
HIJKLMN
OPQRSTU
VWXYZ**
CONTEST
5 20
12233445566778899000
QQWWEERRTTYYUUIIOOPP
-AASSDDFFGGHHJJKKLL*
--ZZXXCCVVBBNNMM--**
--------------------
ACM-ICPC-WORLD-FINALS-2015
2 19
ABCDEFGHIJKLMNOPQZY
X*****************Y
AZAZ
6 4
AXYB
BBBB
KLMB
OPQB
DEFB
GHI*
AB

範例輸出 1

30
160
19
7
請先登入後再提交程式碼

討論與題解

載入討論區…

更多