13. Roman to Integer

原创 2016年08月28日 19:47:57

Given a roman numeral, convert it to an integer.

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

	public static int romanToInt(String s) {
		int num = 0, pre = 0;
		int res = 0;
		for (int i = s.length() - 1; i >= 0; i--) {
			num = romateCharToNum(s.charAt(i));			
			if (pre > num) {
				res -= num;
			} else {
				res += num;
			}
			pre = num;
		}
		return res;
	}

	static int romateCharToNum(char c) {
		switch (c) {
		case 'I':
			return 1;
		case 'X':
			return 10;
		case 'C':
			return 100;
		case 'M':
			return 1000;
		case 'V':
			return 5;
		case 'L':
			return 50;
		case 'D':
			return 500;
		}
		return 0;
	}


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

相关文章推荐

[leetcode 13] Roman to Integer

题目: Given a roman numeral, convert it to an integer. Input is guaranteed to be within the ra...

LeetCode_Easy心得:13. Roman to Integer (C语言)

13. Roman to Integer
  • hhhhhyb
  • hhhhhyb
  • 2017年07月21日 18:59
  • 100

【leetcode c++】13 Roman to Integer

题目 Given a roman numeral, convert it to aninteger. Input is guaranteed to be within the rangefrom 1 ...
  • hqq39
  • hqq39
  • 2015年06月12日 12:36
  • 464

【LEETCODE】13-Roman to Integer

Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 ...

leetcode:13. Roman to Integer

leetcode:13. Roman to Integer 罗马数字转为整数 罗马数字有一下几种 I - 1 V - 5 X - 10 L - 50 C - 100 D - 500 M - 1000 ...

LeetCode之13_Integer to Roman

题目原文: Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range...

LeetCode 13. Roman to Integer 解题报告

LeetCode 13. Roman to Integer 解题报告

leetcode No13. Roman to Integer

前言: 先说点背景吧,这题我一直放着没做,因为我不知道Roman数是怎么计数的呀,然后最近在看《数学之美》(特别有意思的书,第一次觉得数学还挺有意思的)罗马人也是用不同的符号代表数的不同量级。 S...

Leetcode_13_Roman to Integer

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41486885 通过本文你可能学到的知识如下: (1...

[LeetCode]--13. Roman to Integer

Given a roman numeral, convert it to an integer.Input is guaranteed to be within the range from 1 to...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:13. Roman to Integer
举报原因:
原因补充:

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