【leetcode】Python實現-13.羅馬數字轉整數
阿新 • • 發佈:2019-01-06
13.羅馬數字轉整數
給定一個羅馬數字,將其轉換成整數。
返回的結果要求在 1 到 3999 的範圍內。
我
d = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}
result = 0
i = 0
while i < len(s)-1:
if d[s[i]] >= d[s[i+1]]:
result+= d[s[i]]
i+=1
else:
temp = d[s[i+1 ]]-d[s[i]]
result+=temp
i+=2
if i == len(s)-1:
result+=d[s[i]]
return result if 1 <= result <= 3999 else False
別人
d = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}
result = 0
for i in range(len(s)-1):
if d[s[i]] < d[s[i+1]]:
result-= d[s[i]]
else:
result+=d[s[i]]
result+=d[s[len(s)-1]]
return result if 1 < result < 3999 else False
相關知識點在word文件中。
總結:思想要靈活,只知道加,不知道換個角度思考,不能加我可以減吶!