k733. 3. 磁軌移動序列
標籤 : APCS
通過比率 : 268人/487人 ( 55% ) [非即時]
評分方式:
Tolerant

最近更新 : 2023-06-04 22:22

內容

你拿到一個磁帶和一串指令。磁帶上的指針初始位置為 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 老師的回報!

輸入說明

輸入一個字串,為該磁帶指針的控制指令。


輸出說明

輸出一個正整數,代表指針執行完指令後所移動的總路徑長。

範例輸入 #1
T10T15T23T23T22T22T44
範例輸出 #1
36
範例輸入 #2
T10L2T15T22L2T15ET23ET44
範例輸出 #2
78
測資資訊:
記憶體限制: 256 MB
公開 測資點#0 (5%): 0.5s , <1K
公開 測資點#1 (5%): 0.5s , <1K
公開 測資點#2 (5%): 0.5s , <1M
公開 測資點#3 (5%): 0.5s , <1M
公開 測資點#4 (5%): 0.5s , <1M
公開 測資點#5 (5%): 0.5s , <1M
公開 測資點#6 (5%): 0.5s , <1M
公開 測資點#7 (5%): 0.5s , <1M
公開 測資點#8 (5%): 1.0s , <1M
公開 測資點#9 (5%): 1.0s , <1M
公開 測資點#10 (5%): 1.0s , <1M
公開 測資點#11 (5%): 1.0s , <1M
公開 測資點#12 (5%): 1.0s , <1M
公開 測資點#13 (5%): 1.0s , <1M
公開 測資點#14 (5%): 1.0s , <1M
公開 測資點#15 (5%): 1.0s , <1M
公開 測資點#16 (5%): 1.0s , <1M
公開 測資點#17 (5%): 1.0s , <1M
公開 測資點#18 (5%): 1.0s , <1M
公開 測資點#19 (5%): 1.0s , <1M
提示 :
標籤:
APCS
出處:
2023年6月APCS [管理者: algo.seacow@ ... (演算法海牛) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
39456 a302854888@g ... (小麥) k733
123 2024-02-23 23:30
37697 edoctopus322 ... (Moon Jam) k733
530 2023-09-29 18:57
35864 course@wisea ... (Course WiseAI) k733
Python解題(圖)
621 2023-06-20 10:15
35695 michael54856 ... (王旻玄) k733
710 2023-06-12 16:30
35600 Bangye (風清揚) k733
793 2023-06-08 06:51