LeetCode: Roman to Integer
2012-10-09 00:09
405 查看
Given a roman numeral, convert it to an integer.
Input is guaranteed to be within the range from 1 to 3999.
Input is guaranteed to be within the range from 1 to 3999.
class Solution { public: int map(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; } } int romanToInt(string s) { // Start typing your C/C++ solution below // DO NOT write int main() function int nSize = s.size(); int pre = 1001; int result = 0; int cur; for (int i = 0; i < nSize; ++i) { cur = map(s[i]); result += cur; if (cur > pre) { result -= 2*pre; } pre = cur; } return result; } };
相关文章推荐
- LeetCode -- Roman to Integer
- LeetCode:Roman to Integer
- leetcode 第12题 Integer to Roman
- [LeetCode] Integer to Roman
- LeetCode(13) Roman to Integer
- LeetCode 14 - Roman to Integer
- LeetCode No.13 Roman to Integer
- LeetCode | Integer to Roman(整数转换成罗马数字)
- leetcode-13-roman to integer
- leetcode:Roman to Integer and Integer to Roman
- leetcode 12 Integer to Roman
- 【leetcode】Roman to Integer
- Leetcode-Integer to Roman
- [LeetCode] Integer to Roman 整数转化成罗马数字
- 【leetcode】String——Roman to Integer(13)
- [LeetCode] Roman To Integer 解题报告
- leetcode系列(四):罗马数Roman to Integer
- LeetCode Roman to Integer
- LeetCode 13 Roman to Integer
- leetcode:Roman to Integer