首页 > 编程学习 > 罗马数字转化为阿拉伯数字

罗马数字转化为阿拉伯数字

发布时间:2022/9/13 19:05:43

罗马数字不是位置计数
缺点:罗马数字不能表达0,书写困难
2022 1410 MMXXI MCDX
class Solution(object):
def romanToInt(self, s):
"""
:type s: str
:rtype: int
"""
sum=0
convert={'M': 1000,'D': 500 ,'C': 100,'L': 50,'X': 10,'V': 5,'I': 1}

    for i in range(len(s)-1):            
        if convert[s[i]] < convert[s[i+1]]:                
            sum -= convert[s[i]]            
        else:                
            sum += convert[s[i]]        
    sum += convert[s[-1]]        
    return sum

if name == 'main':
a = Solution()
palindrome_bool = a.romanToInt("MMXXII")
print(palindrome_bool)
来自学长王其。

Copyright © 2010-2022 mfbz.cn 版权所有 |关于我们| 联系方式|豫ICP备15888888号