你拿到一個磁帶和一串指令。磁帶上的指針初始位置為 10,我們將其表示為 T10。指令是一個由多個 T 和 loop 指令組成的字串,每個指令都會影響指針的移動。
T 指令的格式為 Txx,其中 xx 是兩位數的整數(10~99),代表指針從當前位置移動到 xx 所指示的位置。
除了 T 指令外,還有一個 loop 指令結構,其格式為 Lx...E,其中 x 是一位數的整數(1~9)。loop 指令允許重複執行一系列指令。loop 指令的開始標記為 Lx,結束標記為 E,指令序列位於這兩個標記之間。loop 指令可以嵌套,也就是說,一個 loop 指令的內部可以包含其他的 loop 指令。保證所有 loop 指令內一定會有至少一個 T 指令。
請寫一個程式,根據給定的指令串,計算指針總共移動的距離。
範例: 給定指令串:T10T15T23T23T22T22T44 指針總共移動的距離為:5 + 8 + 0 + 1 + 0 + 22 = 36
子問題一 (10%) 不存在迴圈,長度不超過 $50$
子問題二 (30%) 長度不超過 $10^4$,紀錄的個數不超過 $3 \times 10^4$
子問題三 (60%) 長度不超過 $10^5$,距離不超過 $2^{60}$
此題和 APCS 原題的差異是 Loop 迴圈的值域是 (2~9), 由於不影響整體的解題策略, 因此不做修改僅註記與此。感謝 wubaie 老師的回報!
輸入一個字串,為該磁帶指針的控制指令。
輸出一個正整數,代表指針執行完指令後所移動的總路徑長。
T10T15T23T23T22T22T44
36
T10L2T15T22L2T15ET23ET44
78
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
42559 | htchu.taiwan ... (Hsueh-Ting Chu) | k733 | 58 | 2024-10-02 16:43 | |
41020 | glps1004@gma ... (Ian) | k733 | 187 | 2024-06-25 15:51 | |
39456 | a302854888@g ... (小麥) | k733 | 500 | 2024-02-23 23:30 | |
37697 | edoctopus322 ... (Moon Jam) | k733 | 948 | 2023-09-29 18:57 | |
35864 | course@wisea ... (Course WiseAI) | k733 | 876 | 2023-06-20 10:15 |