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
相关推荐
萝卜白菜。3 分钟前
TongWeb7.0相同的类指明加载顺序
开发语言·python·pycharm
赵钰老师11 分钟前
【ADCIRC】基于“python+”潮汐、风驱动循环、风暴潮等海洋水动力模拟实践技术应用
python·信息可视化·数据分析
爬山算法25 分钟前
MongoDB(80)如何在MongoDB中使用多文档事务?
数据库·python·mongodb
YuanDaima20481 小时前
基于 LangChain 1.0 的检索增强生成(RAG)实战
人工智能·笔记·python·langchain·个人开发·langgraph
RopenYuan2 小时前
FastAPI -API Router的应用
前端·网络·python
听风吹等浪起2 小时前
用Python和Pygame从零实现坦克大战
开发语言·python·pygame
Kk.08022 小时前
力扣 LCR 084.全排列||
算法·leetcode·职场和发展
书到用时方恨少!2 小时前
Python Pandas 使用指南:数据分析的瑞士军刀
python·数据分析·pandas
旖-旎2 小时前
分治(快速选择算法)(3)
c++·算法·leetcode·排序算法·快速选择
_日拱一卒2 小时前
LeetCode:合并区间
算法·leetcode·职场和发展