Python | Leetcode Python题解之第13题罗马数字转整数

题目:

题解:

python 复制代码
class Solution:

    SYMBOL_VALUES = {
        'I': 1,
        'V': 5,
        'X': 10,
        'L': 50,
        'C': 100,
        'D': 500,
        'M': 1000,
    }

    def romanToInt(self, s: str) -> int:
        ans = 0
        n = len(s)
        for i, ch in enumerate(s):
            value = Solution.SYMBOL_VALUES[ch]
            if i < n - 1 and value < Solution.SYMBOL_VALUES[s[i + 1]]:
                ans -= value
            else:
                ans += value
        return ans
相关推荐
superman超哥7 小时前
仓颉Option类型的空安全处理深度解析
c语言·开发语言·c++·python·仓颉
2401_841495647 小时前
【LeetCode刷题】跳跃游戏Ⅱ
数据结构·python·算法·leetcode·数组·贪心策略·跳跃游戏
Data_agent7 小时前
OOPBUY模式淘宝1688代购系统搭建指南
开发语言·爬虫·python
张哈大7 小时前
AI Ping 上新限免:GLM-4.7 与 MiniMax-M2.1 实测对比
人工智能·python
乘凉~7 小时前
【Linux作业】Limux下的python多线程爬虫程序设计
linux·爬虫·python
xwill*8 小时前
pytorch中项目配置文件的管理与导入方式
人工智能·python
BBB努力学习程序设计8 小时前
Python模块与包:构建可维护的代码结构
python
BBB努力学习程序设计8 小时前
Python函数深度解析:从基础到高级装饰器
python·pycharm
抹除不掉的轻狂丶8 小时前
Java 日志框架完整指南:发展历史、核心组成与最佳实践
java·开发语言·python
目标是分享一切8 小时前
python卸载的时候出现0x80070643如何解决
python