12.整数转罗马数字

​​题目来源:

leetcode题目,网址:12. 整数转罗马数字 - 力扣(LeetCode)

解题思路:

从大到小枚举所有可能出现得罗马数字,按需添加至结果中即可。

解题代码:

复制代码
class Solution {
public:
    string intToRoman(int num) {
        string res;
        vector<int> worth={1000,900,500,400,100,90,50,40,10,9,5,4,1};
        vector<string> str={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};
        for(int i=0;i<worth.size();i++){
            for(int j=0;j<num/worth[i];j++){
                res+=str[i];
            }
            num=num%worth[i];
        }
        return res;
    }
};
复制代码

总结:

官方题解给出了两种解法。第一种是模拟。第二种是枚举,列出当前位上数字 与罗马数字间的对应关系后。


相关推荐
hetao173383713 小时前
2026-10-01~02 hetao1733837 的刷题记录
c++·算法
郝学胜-神的一滴14 小时前
AI 编程智能体 03:拆解当下主流智能体能力
开发语言·c++·人工智能·python·程序人生·游戏
Nil20814 小时前
leetcode 739每日温度
算法·leetcode·职场和发展
宵时待雨15 小时前
linux笔记归纳25:多路转接epoll
linux·服务器·网络·c++
xqqxqxxq15 小时前
LeetCode Hot100 矩阵专题题解笔记
笔记·leetcode·矩阵
Frank_refuel15 小时前
【C++项目】手撕JRpc框架(单机怎么优化到分布式思想)
开发语言·c++
ShineWinsu15 小时前
对于Redis:Hash类型的解析
c++·redis·分布式·缓存·面试·hash·哈希表
wuminyu15 小时前
JEP491中synchronized关键字引发的平台线程钉住解决方法简介
java·linux·c语言·jvm·c++
All for pursuit.16 小时前
【贪心-4】581.最短无序连续子数组
数据结构·c++·算法·leetcode
无名猿16 小时前
list 与 forward_list:链表真的比 vector 快吗
c++·性能优化·stl·内存管理·标准库