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

总结:

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


相关推荐
Hua-Jay1 分钟前
OpenCV联合C++/Qt 学习笔记(十九)----图像分割
c++·笔记·qt·opencv·学习
kyle~3 分钟前
调试器---GDB(Linux/Unix平台下编译型语言,C++、Go、Rust)
linux·c++·unix
宏笋8 分钟前
C++ string 和string_view的区别和用法
c++
宏笋8 分钟前
C++ 回调函数详解和常用场景
开发语言·c++
WBluuue10 分钟前
Codeforces 1095 Div2(ABCDE)
c++·算法
吃着火锅x唱着歌17 分钟前
LeetCode 496.下一个更大元素I
算法·leetcode·职场和发展
咩咦20 分钟前
C++学习笔记07:引用做返回值
c++·学习笔记·引用·static·引用返回
郭涤生22 分钟前
C++ 20联合体(Union)
开发语言·c++
Fanfanaas22 分钟前
Linux 系统编程 文件篇 (一)
linux·运维·服务器·c++·学习
王老师青少年编程23 分钟前
csp信奥赛C++高频考点专项训练之字符串 --【回文字符串】:判断字符串是否为回文
c++·字符串·csp·高频考点·信奥赛·回文字符串·判断字符串是否为回文