[LeetCode][Java] Integer to Roman

原创 2015年07月09日 10:12:28

题目:

Given an integer, convert it to a roman numeral.

Input is guaranteed to be within the range from 1 to 3999.


题意:

给定一个整数,将其转化为罗马数字。

题目给定的输入保证在1-3999之间。


算法分析:

 参考了博客http://www.cnblogs.com/springfor/p/3886459.html


 * 对老中来说,不熟悉罗马数字的规律是个问题。其实就是那么几个符号,然后规律就是 1,4,5,9,10 然后每次十倍循环。
 * 算法就是给一个数,大于1000的时候就写上一个M, 还大于1000,再写一个M… 终于小于1000了,看看大于900不?,大于500不…如此类推。
 * 罗马数字为以下表示形式:
  I 1
  V 5
  X 10
  L 50
  C 100
  D 500
  M 1,000

AC代码:

public class Solution 
{
    public String intToRoman(int num) 
    {
        String str = "";    
        String [] symbol = {"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};    
        int [] value = {1000,900,500,400, 100, 90,  50, 40,  10, 9,   5,  4,   1};   
        for(int i=0;num!=0;i++)
        {  
            while(num >= value[i])
            {  
                num -= value[i];  
                str += symbol[i];  
            }  
        }  
        return str;  
    }
}


版权声明:本文为博主原创文章,转载注明出处

【LeetCode】Integer to Roman 和 Roman to Integer 解题报告

【题目】 Given a roman numeral, convert it to an integer. Or, Given an integer, convert it to a roman nu...
  • ljiabin
  • ljiabin
  • 2014年10月10日 20:28
  • 21626

LeetCode 12 Integer to Roman(C,C++,Java,Python)

Problem: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the ra...
  • runningtortoises
  • runningtortoises
  • 2015年05月08日 13:13
  • 1106

[leetcode]Roman to Integer C语言

【题目】 Roman to Integer Given a roman numeral, convert it to an integer. Input is guaranteed to be w...
  • noc_lemontree
  • noc_lemontree
  • 2015年08月20日 09:49
  • 622

Integer to Roman (罗马数字转换) 【leetcode】

题目:Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr...
  • zhang9801050
  • zhang9801050
  • 2013年09月20日 16:09
  • 16625

[LeetCode] 012. Integer to Roman (Medium) (C++/Java/Python)

[LeetCode] 012. Integer to Roman (Medium) (C++/Java/Python)
  • hcbbt
  • hcbbt
  • 2015年03月02日 23:08
  • 2304

(Java)LeetCode-12. Integer to Roman

Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from ...
  • u012848330
  • u012848330
  • 2016年05月10日 23:13
  • 440

LeetCode13——Roman to Integer

Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from ...
  • booirror
  • booirror
  • 2015年01月27日 17:51
  • 2457

[LeetCode]Roman to Integer,解题报告

前言 又是一个周末下午,每到周末可以和女友一起玩玩手机游戏做做体操还挺开心的,但是还是要多做题目保持写代码的感觉 题目 Given a roman numeral, convert it to...
  • zinss26914
  • zinss26914
  • 2013年12月01日 20:46
  • 19471

LeetCode --- 12. Integer to Roman

题目链接:Integer to Roman Given an integer, convert it to a roman numeral. Input is guaranteed to be w...
  • makuiyu
  • makuiyu
  • 2015年01月29日 10:49
  • 1956

(Java)LeetCode-13. Roman to Integer

Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from ...
  • u012848330
  • u012848330
  • 2016年05月10日 23:27
  • 321
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[LeetCode][Java] Integer to Roman
举报原因:
原因补充:

(最多只允许输入30个字)