问题来源:https://leetcode.com/problems/roman-to-integer/
问题描述:Given a roman numeral, convert it to an integer.
我的代码:主要找出罗马数字规律即可。
int romanToInt(string s){
map<char,int> roman;
roman.insert(pair<char, int>('I', 1));
roman.insert(pair<char, int>('X', 10));
roman.insert(pair<char, int>('C', 100));
roman.insert(pair<char, int>('M', 1000));
roman.insert(pair<char, int>('V', 5));
roman.insert(pair<char, int>('L', 50));
roman.insert(pair<char, int>('D', 500));
int sum = 0;
for (int i = 0; i < s.size(); i++){
if (i < (s.size() - 1) && roman[s[i + 1]] > roman[s[i]]){
sum -= roman[s[i]];
}
else{
sum += roman[s[i]];
}
}
return sum;
}