首页 > 学院 > 开发设计 > 正文

Roman to Interger

2019-11-06 07:41:02
字体:
来源:转载
供稿:网友

Given a roman numeral, convert it to an integer.

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

class Solution {public: int romanToInt(string s) { map<char, int> roman; roman['I'] = 1; roman['X'] = 10; roman['C'] = 100; roman['M'] = 1000; roman['V'] = 5; roman['L'] = 50; roman['D'] = 500; int len = s.size(); int sum = roman[s[len-1]]; //cout << sum << endl; char cur = s[len-1]; for (int i=len-2; i>=0; i--) { if (roman[s[i]] >= roman[cur]) { sum += roman[s[i]]; } else { sum -= roman[s[i]]; } //cout << sum << endl; cur = s[i]; } return sum; }};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表