python-leetcode-整数转罗马数字

12. 整数转罗马数字 - 力扣(LeetCode)

python 复制代码
class Solution:
    def intToRoman(self, num: int) -> str:
        # 罗马数字映射表
        roman_map = [
            (1000, "M"), (900, "CM"), (500, "D"), (400, "CD"),
            (100, "C"), (90, "XC"), (50, "L"), (40, "XL"),
            (10, "X"), (9, "IX"), (5, "V"), (4, "IV"), (1, "I")
        ]
        
        # 初始化结果字符串
        roman = ""
        
        # 遍历映射表
        for value, symbol in roman_map:
            if num == 0:
                break
            # 将当前数值尽可能多地减去
            count = num // value
            roman += symbol * count
            num %= value
        
        return roman
相关推荐
Dr.kangder3 分钟前
嵌入式面试总结(十九)——内存泄露
单片机·算法·面试·职场和发展·架构·硬件架构
Dr.kangder14 分钟前
嵌入式面试总结(十七)——DMA总线
面试·职场和发展·架构·嵌入式·总线
Herbert_hwt22 分钟前
【C语言基础】常量、选择结构与运算符全解析
c语言·开发语言·算法
Suxing91 小时前
C语言基础分享:从“租房”到“拆迁”,C语言动态内存管理
java·数据结构·算法
LuminousCPP1 小时前
单链表专题(四)-刷题复盘篇-LeetCode 138 随机链表复制|原地拷贝法突破复杂指针操作
数据结构·笔记·算法·leetcode·链表
逆境不可逃2 小时前
【LeetCode 912】排序数组——随机化快速排序详解
数据结构·算法·排序算法
Coder-magician2 小时前
《代码随想录》刷题打卡day31:动态规划-背包问题part02
算法·动态规划
薛定e的猫咪2 小时前
从因果视角解决多智能体协作:细读 SCIC 算法
算法
Forever Nore2 小时前
LeetCode 14 最长公共前缀 - 纵向扫描
linux·服务器·leetcode
c238562 小时前
《算法武林谱:四大排序神功与二分寻宝术全解》
数据结构·算法·排序算法