[LeetCode] Roman to Integer

原创 2015年11月20日 14:55:34

问题

Given a roman numeral, convert it to an integer.

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

Subscribe to see which companies asked this question


思路

罗马数字的构造方式上一篇博客里面有提到,按照这个逻辑组织代码即可。


代码

public class Solution {
    public int romanToInt(String s) {
        int ret = charToNum(s.charAt(0));

        for (int i = 1; i < s.length(); i++) {  
            if (charToNum(s.charAt(i-1)) < charToNum(s.charAt(i)))
                ret += charToNum(s.charAt(i)) - 2*charToNum(s.charAt(i-1));  
            else
                ret += charToNum(s.charAt(i));  
        }  
        return ret;  
    }
    
    public int charToNum (char c) {  
        switch(c) {  
            case 'I': return 1;   
            case 'V': return 5;  
            case 'X': return 10;  
            case 'L': return 50;  
            case 'C': return 100;  
            case 'D': return 500;  
            case 'M': return 1000;  
            default: return 0;  
        }  
    } 
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

[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
  • 619

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
  • 16608

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
  • 2450

【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
  • 21613

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
  • 1949

[LeetCode]Roman to Integer,解题报告

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

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
  • 1104

[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
  • 2301

【LeetCode013算法/编程练习C++】Roman to Integer //难得击败了80%的人

罗马数字转整数int
  • zmdsjtu
  • zmdsjtu
  • 2016年12月29日 19:37
  • 637

(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
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[LeetCode] Roman to Integer
举报原因:
原因补充:

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