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

总结:

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


相关推荐
mjhcsp17 分钟前
C++ 循环结构:控制程序重复执行的核心机制
开发语言·c++·算法
Mr_WangAndy1 小时前
C++_chapter15_C++重要知识点_lambda,initializer_list
c++·lambda·初始化列表
Maple_land1 小时前
第1篇:Linux工具复盘上篇:yum与vim
linux·运维·服务器·c++·centos
hggngx548h2 小时前
有哪些C++20特性可以在Dev-C++中使用?
开发语言·c++·c++20
计科土狗3 小时前
算法基础入门第一章
c++·算法
Miraitowa_cheems3 小时前
LeetCode算法日记 - Day 102: 不相交的线
数据结构·算法·leetcode·深度优先·动态规划
Miraitowa_cheems3 小时前
LeetCode算法日记 - Day 101: 最长公共子序列
数据结构·算法·leetcode·深度优先·动态规划
9ilk3 小时前
【仿RabbitMQ的发布订阅式消息队列】 ---- 功能测试联调
linux·服务器·c++·分布式·学习·rabbitmq
北冥湖畔的燕雀3 小时前
std之list
数据结构·c++·list
Elias不吃糖3 小时前
eventfd 初认识Reactor/多线程服务器的关键唤醒机制
linux·服务器·c++·学习