13. 羅馬數字轉整數
遍歷字串每乙個字元,遇到相應的字元就加對應的數值,但需要注意題目所給出的六種特殊情況,所以要用乙個字元變數記錄當前字元的前乙個字元,二者組合是否符合六種特殊情況,屬於就加特殊的數值,不然就加正常的數值。
方法一:
class
solution
switch
(curr_c)
else
break
;case
'x':
if(prev_c ==
'i')
else
break
;case
'l':
if(prev_c ==
'x')
else
break
;case
'c':
if(prev_c ==
'x')
else
break
;case
'd':
if(prev_c ==
'c')
else
break
;case
'm':
if(prev_c ==
'c')
else
break;}
}return result;
}}
方法二:
class solution {
public static int romantoint(string s) {
//把六種特殊情況進行替換,後面統一處理
s = s.replace("iv","a");
s = s.replace("ix","b");
s = s.replace("xl","c");
s = s.replace("xc","d");
s = s.replace("cd","e");
s = s.replace("cm","f");
int result = 0;
for (int i=0; i
13 羅馬數字轉整數
羅馬數字包含以下七種字元 i,v,x,l,c,d和m。字元 數值 i 1 v 5 x 10 l 50 c 100 d 500 m 1000例如,羅馬數字 2 寫做ii,即為兩個並列的 1。12 寫做xii,即為x ii。27 寫做xxvii,即為xx v ii。通常情況下,羅馬數字中小的數字在大的數...
13 羅馬數字轉整數
羅馬數字包含以下七種字元 i,v,x,l,c,d和m。字元 數值i 1 v 5 x 10 l 50 c 100 d 500 m 1000例如,羅馬數字 2 寫做ii,即為兩個並列的 1。12 寫做xii,即為x ii。27 寫做xxvii,即為xx v ii。通常情況下,羅馬數字中小的數字在大的數字...
13 羅馬數字轉整數
羅馬數字包含以下七種字元 i,v,x,l,c,d 和 m。字元 數值 i 1 v 5 x 10 l 50 c 100 d 500 m 1000 例如,羅馬數字 2 寫做 ii 即為兩個並列的 1。12 寫做 xii 即為 x ii 27 寫做 xxvii,即為 xx v ii 通常情況下,羅馬數字中...