题目


知识点
unordered_map------链接
思路
左边比右边大用加法,左边比右边小用减法

题解
unordered_map私有化
class Solution {
private:
unordered_map<char,int> symbolValue = {
{'I',1},
{'V',5},
{'X',10},
{'L',50},
{'C',100},
{'D',500},
{'M',1000},
};
public:
int romanToInt(string s) {
int ans = 0;
int n = s.length();
for(int i = 0; i<n ;i++){
int value = symbolValue[s[i]];
if(i<n-1 && value<symbolValue[s[i+1]]){
ans = ans - value;
}else{
ans = ans + value;
}
}
return ans;
}
};