Easy
Roman Numerals Chart
從后往前traverse,這道題注意一下"I", "X", "C"這幾個代表1尘颓,10团秽,100的羅馬數(shù)字在原數(shù)字大于5主胧,大于50,大于500時都是做減法的习勤,所以要討論踪栋。并且注意一下switch case的寫法。
class Solution {
public int romanToInt(String s) {
int res = 0;
for (int i = s.length() - 1; i >= 0; i--){
char c = s.charAt(i);
switch (c) {
case 'I':
res += (res >= 5 ? -1 : 1);
break;
case 'V':
res += 5;
break;
case 'X':
res += (res >= 50 ? -10 : 10);
break;
case 'L':
res += 50;
break;
case 'C':
res += (res >= 500 ? - 100 : 100);
break;
case 'D':
res += 500;
break;
case 'M':
res += 1000;
break;
}
}
return res;
}
}