描述

给定一个整数,将其转换成罗马数字。

返回的结果要求在1-3999的范围内。

说明

  • https://en.wikipedia.org/wiki/Roman_numerals
  • https://zh.wikipedia.org/wiki/%E7%BD%97%E9%A9%AC%E6%95%B0%E5%AD%97
  • http://baike.baidu.com/view/42061.htm

样例

思路


while循环拆分调用,用字符串显示最终的罗马数字。代码:

class Solution {
public:/*** @param n The integer* @return Roman representation*/string intToRoman(int n) {// Write your code hereif(n<1 || n>3999)return "ERROR";string  s=(4,'0');while(n>=1000){s += "M";n -= 1000;}while(n >= 900){s += "CM";n -= 900;}while( n>= 500){s += "D";n -= 500;}while( n>= 400){s += "CD";n -= 400;}while( n >= 100){s += "C";n -= 100;}while( n>= 90){s += "XC";n -= 90;}while( n>= 50){s += "L";n -= 50;}while( n >= 40){s += "XL";n -= 40;}while( n>= 10){s += "X";n -= 10;}while( n>= 9){s +="IX";n -= 9;}while( n>=5 ){s += "V";n -= 5;}while( n >= 4 ){s +="IV";n -= 4;}while(n >= 1 ){s +="I";n -= 1;}return s;}
};

转载于:https://www.cnblogs.com/li1400802003/p/7348439.html

lintcode 418整数转罗马数字相关推荐

  1. leetcode 418 整数转罗马数字

    描述 给定一个整数,将其转换成罗马数字. 保证给定的整数在1到3999的范围内. 样例 1: 输入: 1 输出: "I" 样例 2: 输入: 99 输出: "XCIX&q ...

  2. lintcode :Integer to Roman 整数转罗马数字

    题目 整数转罗马数字 给定一个整数,将其转换成罗马数字. 返回的结果要求在1-3999的范围内. 样例 4 -> IV 12 -> XII 21 -> XXI 99 -> XC ...

  3. 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 ...

  4. LeetCode 12 Integer to Roman (整数转罗马数字)

    题目链接: https://leetcode.com/problems/integer-to-roman/?tab=Description String M[] = {"", &q ...

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

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

  6. LeetCode【11--盛水最多的容器】LeetCode【12 -- 整数转罗马数字】

    盛水最多的容器 题目描述 给定 n 个非负整数 a1,a2,-,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0 ...

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

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

  8. (补)20200105:整数转罗马数字

    整数转罗马数字 题目 大致思路 代码实现 题目 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 ...

  9. 整数转罗马数字(C++)

    整数转罗马数字 描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写 ...

最新文章

  1. linux线程的实现【转】
  2. 百亿数据量下,掌握这些Redis技巧你就能Hold全场
  3. android edittext 不可编辑
  4. 费解 | 为什么很多程序员工作时都戴耳机?
  5. PHP中常见的五种设计模式
  6. PHP后台处理jQuery Ajax跨域请求问题 — xx was not called解决办法
  7. Serena Dimensions 介绍
  8. 5 年之后,产品经理,没了?
  9. 虎头少保,天下第一手孙禄堂【转】
  10. Android之TextView属性大全
  11. zabbix监控服务器raid状态,基于Zabbix的MegaRAID阵列卡状态监控
  12. gerrit/git操作中遇到的问题
  13. 2021-03-28
  14. python报告水印怎么弄_如何用python操作word添加水印?这里有个问题,希望大家看一下!...
  15. 无线网经常短连接服务器,我家的无线网不稳定,经常掉线,每次玩游戏到加载的时候,总会出现:”无法连接服务器,请检查您的网络“...
  16. 《Blender图解教程:新手入门练习》
  17. 远程辅助必备免费神器ToDesk远程控制软件(答辩,远程,调试,办公)必备远程工具
  18. Uibot 浏览器窗口最大化
  19. 聊聊Google face api
  20. MSCKF 2.0 理论推导以及能观性分析

热门文章

  1. 用户体验改善案例_改善用户体验研究的5种习惯
  2. 10 个你可能还不知道 VS Code 使用技巧
  3. Dubbo原理与框架设计
  4. Java EE启示录
  5. 台积电放大招:甩开英特尔 7nm和5nm芯片将诞生
  6. TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—基础知识篇...
  7. 完美完全卸载Oracle 11g数据库
  8. Tiny模板语言(VelocityPlus)初步入门
  9. 在CentOS中安装gcc配置c语言开发环境(转)
  10. BGP聚合as-set advertise-map