#33494: python


yoshi950325@gmail.com (第四象限)

學校 : 國立政治大學附屬高級中學
編號 : 185318
來源 : [101.12.28.190]
最後登入時間 :
2023-04-19 07:03:09
j607. 3. 先加後乘與函數 -- 2023年1月APCS | From: [124.155.166.62] | 發表日期 : 2023-01-10 00:14

x = input()

replace-->拿掉字串中的f

 

def a(x)-->計算沒有f()的

.split("*")轉list

ans = 1

for-each

return每個元素用eval()然後乘進去ans

 

 

def b(x)-->執行一次可以算完一個f()

left=right=0-->用來儲存待會搜尋到的"("和")"的索引

for-each字串

搜尋"("和")"

一旦找到")"就停止迴圈,因為")"的前一個"("一定是他的配對

x[left+1:right]是其中一個f()的內容

x.split(",")轉換成list

for-each將每個元素用a()計算過

ans = max-min

return 原本的字串.replace(x[left:right]:right+1, str(ans))-->將原本的f()取代算好的ans

 

while "(" in x:-->只要還有f()在,就持續執行b()

   x = b(x)

x = a(x)-->執行完後運算最後結果

print(x)

 
ZeroJudge Forum