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
相关推荐
汤姆小白1 小时前
01-环境搭建与项目导览
人工智能·python·机器学习·numpy
伊玛目的门徒5 小时前
试用leetcode之典中典 二数之和问题
java·算法·leetcode
向日的葵0067 小时前
langchain的Tools教程(三)
python·langchain·tools
言乐68 小时前
Python实现可运行解密游戏游戏框架
python·游戏·小程序·游戏程序·关卡设计
Kx_Triumphs9 小时前
HDU4348 To the moon(主席树区间修改模板)
算法·题解
YUS云生9 小时前
Python学习笔记·第31天:FastAPI入门——路由、路径参数、查询参数与请求体
笔记·python·学习
旖-旎9 小时前
《LeetCode647 回文子串 || LeetCode 5 最长回文子串》
c++·算法·leetcode·动态规划·哈希算法
智写-AI9 小时前
真实有效的免费降英文AI工具服务商
人工智能·python
yuhuofei202110 小时前
【Python入门】了解掌握Python中函数的基本使用
python