給定乙個羅馬數字 s,將羅馬數字轉換成整數。
如羅馬數字i
,ii
,iii
,iv
,v
分別代表數字 1, 2, 3, 4, 5。
首先要來了解一下羅馬數字表示法,基本字元有 77 個:i
、v
、x
、l
、c
、d
、m
,分別表示 1、5、10、50、100、500、1000。
在構成數字的時候,有下列規則:
1、相同的數字連寫,所表示的數等於這些數字相加得到的數,如:iii
=3;
2、小的數字在大的數字的右邊,所表示的數等於這些數字相加得到的數, 如:viii
=8;xii
=12;
3、小的數字,(限於ⅰ
、x
和c
)在大的數字的左邊,所表示的數等於大數減小數得到的數,如:iv
=4;ix
=9;
4、正常使用時,連寫的數字重複不得超過三次。
輸入乙個羅馬數字字串,其對應的數字為 s(1≤s≤3999)。
輸出對應的整數 s。
樣例輸入
cxxiii樣例輸出
123**如下:
#include#includeusing namespace std;
int rtn(char r)}
int main()
for(int i=0;ielse
n+=rtn(a[i]);
} cout << n;
return 0;
}
計蒜客 整數轉換成羅馬數字
給定乙個整數 numnumnu m,將整數轉換成羅馬數字。如 1,2,3,4,51,2,3,4,51,2,3,4,5 對應的羅馬數字分別為i,ii,iii,iv,v等,更詳細的說明見此 鏈結。第一行輸入乙個整數 num 1 num 3999 num 1 leq num leq 3999 nu m 1...
計蒜客 羅馬數字轉換成整數
給定乙個羅馬數字 ss s,將羅馬數字轉換成整數。如羅馬數字i,ii,iii,iv,v分別代表數字 1,2,3,4,51,2,3,4,51,2,3,4,5。首先要來了解一下羅馬數字表示法,基本字元有 77 7 個 i v x l c d m,分別表示 11 1 55 5 101010 505050 ...
計蒜客 整數轉換成羅馬數字
整數轉換成羅馬數字 給定乙個整數 numnu m,將整數轉換成羅馬數字。如 1,2,3,4,51,2,3,4,51,2,3,4,5 對應的羅馬數字分別為i,ii,iii,iv,v等,更詳細的說明見此 鏈結。第一行輸入乙個整數 num 1 leq num leq 3999 nu m 1 num 399...