罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。

字符          数值
I             1
V             5
X             10
L             50
C             100
D             500
M             1000来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/integer-to-roman
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

————————————
解题思路:
使用列表保存罗马数字和对应的阿拉伯数字,然后从大往小对数字进行遍历。

class Solution:def intToRoman(self, num: int) -> str:'''贪心算法思想'''nums = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1]romans = ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"]length = len(nums)answer = ''i = 0 while(i<length):  # 从大往小进行选择,一开始是1000对应的索引while(num>=nums[i]):  # 如果当前num数字大于列表中的值answer += romans[i]  # 找到对应的罗马字符num -= nums[i]  # 将其对应的阿拉伯数字减去i += 1  return answer

leetcode —— 12. 整数转罗马数字相关推荐

  1. Leetcode 12. 整数转罗马数字 (每日一题 20210827)

    罗马数字包含以下七种字符: I, V, X, L,C,D 和 M.字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列 ...

  2. C++ leetcode 12. 整数转罗马数字 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。

    一.C++代码: string intToRoman(int num) {map<int, char> mapRoman = { {1,'I'},{5,'V'},{10,'X'},{50, ...

  3. LeetCode 12 整数转罗马数字

    https://leetcode-cn.com/problems/integer-to-roman/ 解决方案 class Solution {int[] values = {1000, 900, 5 ...

  4. 12. 整数转罗马数字 (Java解题 贪心思想)

    LeetCode - 12. 整数转罗马数字 题目描述 解题分析 code 总结 题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L ...

  5. LeetCode (12.整数转罗马数字)JAVA StringBuffer

    LeetCode (12.整数转罗马数字)JAVA StringBuffer 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 1 ...

  6. Leetcode算法Java全解答--12. 整数转罗马数字

    Leetcode算法Java全解答–12. 整数转罗马数字 文章目录 Leetcode算法Java全解答--12. 整数转罗马数字 题目 想法 结果 总结 代码 我的答案 大佬们的答案 测试用例 其他 ...

  7. java 转化罗马数字._Java刷LeetCode:整数转罗马数字

    0 Java刷LeetCode:整数转罗马数字 Aug. 17, 2018, 9:41 p.m. 题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 ...

  8. LeetCode 11盛水最多的容器12整数转罗马数字

    目录 盛水最多的容器 题目描述 分析 整数转罗马数字 题目描述: 分析 结语 盛水最多的容器 公众号:bigsai,回复进群加入打卡,回复bigsai获取3GB的pdf资源.点赞再看,养成习惯! 题目 ...

  9. 12.整数转罗马数字-LeetCode

    1. 问题描述 这里直接采用的是leetcode上面的问题描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 例如, 罗马数字 2 写做 II ,即为两个并列的 1.12 写做  ...

最新文章

  1. Android精通:View与ViewGroup,LinearLayout线性布局,RelativeLayout相对布局,ListView列表组件...
  2. C#枚举中的位运算权限分配浅谈
  3. FZU 1019猫捉老鼠
  4. Stack Overflow 2016 最新架构探秘
  5. Spring Boot Cache使用与整合
  6. mikrotikROS系统的几种安装方法
  7. hdu1686:KMP板子
  8. web csrf java_在Java Web应用程序中阻止CSRF
  9. [leetcode-108,109] 将有序数组转换为二叉搜索树
  10. c++中的string类
  11. java spark wordcount_提交任务到spark(以wordcount为例)
  12. Linux环境下为普通用户添加sudo权限
  13. python下载包没用_Python下载各种功能包出问题
  14. 开源游戏《一小时人生》GitHub仓库被删,CEO亲自道歉
  15. AI显微镜面市:20分钟诊断疟疾,精度满足世卫最高标准
  16. 2021-05-15 MySql面试题 通用篇
  17. 领导的本质就是:管理自己,影响别人
  18. 笔记本计算机的功率一般多少,笔记本电脑功率是多少?
  19. 【仪器常用操作方法】TDS1012示波器常用操作方法
  20. 为什么要使用API Key 和Secret Key

热门文章

  1. Windows下资源泄漏检测
  2. 科普文:为什么不能在服务器上 npm install ? #30
  3. MongoDB的RestAPI微服务组件--Mongo-Rest介绍
  4. 容器编排技术 -- 使用Vagrant本地运行Kubernetes
  5. Docker 网络-端口映射、容器链接、Networking
  6. BGP——同步功能【Synchronization】【路由黑洞】
  7. 04737 c++程序设计 第二章 课后程序设计题 第一题
  8. 【C语言】数组名作函数参数,完成数据的升序排列
  9. C#LeetCode刷题之#589-N叉树的前序遍历(N-ary Tree Preorder Traversal)
  10. C#LeetCode刷题之#824-山羊拉丁文​​​​​​​(Goat Latin)