- C++
class Solution { public: int romanToInt(string s) { int length = s.length(); int res = 0; for(int i=0;i<length;i++){ if(s[i]=='M'){ res += 1000; }else if(s[i]=='C'){ if((i+1)<length){ if(s[i+1]=='D'){ res += 400; i++; }else if(s[i+1]=='M'){ res += 900; i++; }else{ res += 100; } }else{ res += 100; } }else if(s[i]=='D'){ res += 500; }else if(s[i]=='X'){ if((i+1)<length){ if(s[i+1]=='L'){ res += 40; i++; }else if(s[i+1]=='C'){ res += 90; i++; }else{ res += 10; } }else{ res += 10; } }else if(s[i]=='L'){ res += 50; }else if(s[i]=='I'){ if((i+1)<length){ if(s[i+1]=='V'){ res += 4; i++; }else if(s[i+1]=='X'){ res += 9; i++; }else{ res += 1; } }else{ res += 1; } }else{ res += 5; } } return res; } };
LeetCode-13 羅馬數字轉整數
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.