参考http://blog.csdn.net/jellyyin/article/details/13165731
代码如下
class Solution {
public:
int romanToInt(string s) {
map<char,int> mapValue;
mapValue.insert(pair<char,int>('I',1));
mapValue.insert(pair<char,int>('V',5));
mapValue.insert(pair<char,int>('X',10));
mapValue.insert(pair<char,int>('L',50));
mapValue.insert(pair<char,int>('C',100));
mapValue.insert(pair<char,int>('D',500));
mapValue.insert(pair<char,int>('M',1000));
int result=0;
for(int i=s.size()-1;i>=0;i--){
if(i==s.size()-1){
result=mapValue[s[i]];
continue;
}
if(mapValue[s[i]]>=mapValue[s[i+1]])
result+=mapValue[s[i]];
else
result-=mapValue[s[i]];
}
return result;
}
};