码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode——13. 罗马数字转整数

时间:2019-10-17 17:44:35      阅读:78      评论:0      收藏:0      [点我收藏+]

标签:while   span   code   else   elf   int   rom   内存   and   

class Solution:
    def romanToInt(self, s: str) -> int:
        memo={‘I‘:1,‘IV‘:4,‘V‘:5,‘IX‘:9,‘X‘:10,‘XL‘:40,‘L‘:50,‘XC‘:90,‘C‘:100,‘CD‘:400,‘D‘:500,‘CM‘:900,‘M‘:1000}
        i=0
        v=0
        while i<len(s):
            if i<len(s)-1 and s[i] in [‘I‘,‘X‘,‘C‘]:
                if s[i:i+2] in [‘IV‘,‘IX‘,‘XL‘,‘XC‘,‘CD‘,‘CM‘]:
                    v+=memo[s[i:i+2]]
                    i+=2
                else:
                    v+=memo[s[i]]
                    i+=1
            else:
                v+=memo[s[i]]
                i+=1
        return v
执行用时 :72 ms, 在所有 python3 提交中击败了65.93%的用户
内存消耗 :14.1 MB, 在所有 python3 提交中击败了5.25%的用户
 
 
                                                                        ——2019.10.17

leetcode——13. 罗马数字转整数

标签:while   span   code   else   elf   int   rom   内存   and   

原文地址:https://www.cnblogs.com/taoyuxin/p/11693038.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!