class Solution: def romanToInt(self, s): """ :type s: str :rtype: int """ s_list = list(s) if len(s_list) == 0: return 0 res = 0 while len(s_list) != 0: tmp = s_list.pop(0) if tmp == 'I': if len(s_list) == 0: res += 1 break if s_list[0] == 'V': s_list.pop(0) res += 4 elif s_list[0] == 'X': s_list.pop(0) res += 9 else: res += 1 elif tmp == 'X': if len(s_list) == 0: res += 10 break if s_list[0] == 'L': s_list.pop(0) res += 40 elif s_list[0] == 'C': s_list.pop(0) res += 90 else: res += 10 elif tmp == 'C': if len(s_list) == 0: res += 100 break if s_list[0] == 'D': s_list.pop(0) res += 400 elif s_list[0] == 'M': s_list.pop(0) res += 900 else: res += 100 elif tmp == 'V': res += 5 elif tmp == 'L': res += 50 elif tmp == 'D': res += 500 elif tmp == 'M': res += 1000 return res
Python, LeetCode, 13. 罗马数字转整数
猜你喜欢
转载自blog.csdn.net/u010342040/article/details/80560085
今日推荐
周排行