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

总结:

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


相关推荐
你的冰西瓜几秒前
C++中的list容器详解
开发语言·c++·stl·list
wuhen_n11 分钟前
LeetCode -- 1:两数之和(简单)
javascript·算法·leetcode·职场和发展
Jeremy爱编码2 小时前
leetcode课程表
算法·leetcode·职场和发展
努力学算法的蒟蒻2 小时前
day46(12.27)——leetcode面试经典150
算法·leetcode·面试
CC.GG3 小时前
【C++】哈希表的实现
java·c++·散列表
元亓亓亓4 小时前
LeetCode热题100--152. 乘积最大子数组--中等
算法·leetcode·职场和发展
bkspiderx4 小时前
C++变量生命周期:从创建到销毁的完整旅程
c++·生命周期·作用域·变量生命周期
梭七y5 小时前
【力扣hot100题】(103)移动零
数据结构·算法·leetcode
T0uken5 小时前
现代 C++ 项目的 CMake 工程组织
c++
Jeremy爱编码6 小时前
leetcode热题腐烂的橘子
算法·leetcode·职场和发展