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;
    }
};
复制代码

总结:

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


相关推荐
是小胡嘛1 小时前
C++之Any类的模拟实现
linux·开发语言·c++
Want5954 小时前
C/C++跳动的爱心①
c语言·开发语言·c++
lingggggaaaa4 小时前
免杀对抗——C2远控篇&C&C++&DLL注入&过内存核晶&镂空新增&白加黑链&签名程序劫持
c语言·c++·学习·安全·网络安全·免杀对抗
phdsky4 小时前
【设计模式】建造者模式
c++·设计模式·建造者模式
H_-H4 小时前
关于const应用与const中的c++陷阱
c++
coderxiaohan4 小时前
【C++】多态
开发语言·c++
gfdhy5 小时前
【c++】哈希算法深度解析:实现、核心作用与工业级应用
c语言·开发语言·c++·算法·密码学·哈希算法·哈希
ceclar1235 小时前
C++范围操作(2)
开发语言·c++
一个不知名程序员www6 小时前
算法学习入门---vector(C++)
c++·算法
明洞日记6 小时前
【数据结构手册002】动态数组vector - 连续内存的艺术与科学
开发语言·数据结构·c++