leetcode 13.罗马数字转整数

罗马数字包含以下七种字符:I, V, X, LCD 和 M

用字典,将键值相配对,通过键的计算来获得表达的数字。

 1 class Solution:
 2     def romanToInt(self, s):
 3         """
 4         :type s: str
 5         :rtype: int
 6         """
 7         if len(s) == 0:
 8             return 0
 9         value = {
10             'I' : 1,
11             'V' : 5,
12             'X' : 10,
13             'L' : 50,
14             'C' : 100,
15             'D' : 500,
16             'M' : 1000
17         }
18         if len(s) == 1:
19             return value[s]
20         sum = 0
21         for i in range(0,len(s)-1):
22             if value[s[i]]< value[s[i+1]]:
23                 sum -= value[s[i]]
24             else:
25                 sum += value[s[i]]
26         sum += value[s[-1]]
27         return sum
原文地址:https://www.cnblogs.com/chengchengaqin/p/9506672.html