# k733. 3. 磁軌移動序列
## 題目連結: [k733](https://zerojudge.tw/ShowProblem?problemid=k733)
## 解題想法
* 把有L的都拆開
* 全部都改成只有T
* 判斷每次移動的量
## 看完老師[解題文章](https://hackmd.io/@oateacher/HJHKmvgDh#P3-%E7%A3%81%E8%BB%8C%E7%A7%BB%E5%8B%95%E5%BA%8F%E5%88%97)的心得
老師使用了一個while迴圈,還有一個index值來判斷目前處理的地方,如果遇到T就計算,如果遇到L就呼叫自己進一個function然後遞迴。這個方法我原本沒有想到,把遞迴跟while寫在一起了。
## 程式碼
```python=
data = input()
#把資料用大寫拆成陣列
grid = []
s = 0
for i in range(1,len(data)):
if data[i].isupper():
grid.append(data[s:i])
s = i
grid.append(data[s:])
#把L拆開存到新陣列
storage = []
times = []
newgrid = []
for i in range(len(grid)):
if grid[i].startswith("T"):
if storage == []:
newgrid.append(grid[i])
else:
storage[-1].append(grid[i])
elif grid[i].startswith("L"):
storage.append([])
times.append(int(grid[i][1]))
else:
for i in range(times.pop()):
for j in storage[-1]:
if len(storage) == 1:
newgrid.append(j)
else:
storage[-2].append(j)
storage.pop()
#start
total = 0
now = 10
for i in range(len(newgrid)):
new = int(newgrid[i][1:])
total += abs(new - now)
now = new
print(total)