你拿到一個磁帶和一串指令。磁帶上的指針初始位置為 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×10^4$
子問題三 (60%) 長度不超過 $10^5$,距離不超過 $2^{60}$
此題和 APCS 原題的差異是 Loop 迴圈的值域是 (2~9), 由於不影響整體的解題策略, 因此不做修改僅註記與此。感謝 wubaie 老師的回報!
輸入一個字串,為該磁帶指針的控制指令。
輸出一個正整數,代表指針執行完指令後所移動的總路徑長。
T10T15T23T23T22T22T44
36
T10L2T15T22L2T15ET23ET44
78
ID | User | Problem | Subject | Hit | Post Date |
沒有發現任何「解題報告」 |