羅馬數字轉換成整數

2021-08-17 13:17:55 字數 1130 閱讀 3218

時間限制: 1000ms 記憶體限制: 

65536k

給定乙個羅馬數字 s

s,將羅馬數字轉換成整數。

如羅馬數字iiiiiiivv分別代表數字 

1, 2, 3, 4, 51,

2,3,

4,5。

首先要來了解一下羅馬數字表示法,基本字元有 77

個:ivxlcdm,分別表示 11

、55、

1010、

5050、

100100

、50050

0、100010

00。 在構成數字的時候,有下列規則:

1、相同的數字連寫,所表示的數等於這些數字相加得到的數,如:iii

= 3=3;

2、小的數字在大的數字的右邊,所表示的數等於這些數字相加得到的數, 如:viii

= 8=

8;xi

i

= 12=1

2;3、小的數字,(限於xc)在大的數字的左邊,所表示的數等於大數減小數得到的數,如:iv

= 4=

4;i

x

= 9=9;

4、正常使用時,連寫的數字重複不得超過三次。

輸入乙個羅馬數字字串,其對應的數字為 s(1 \leq s \leq 3999)s(

1≤s≤

3999

)。輸出對應的整數 ss。

cxxiii

123

#include#includeint main()

}printf("%d\n",count);

return 0;

}

整數轉換成羅馬數字

編寫乙個將整數n 1 n 9999 轉換成羅馬數字。假如說我們有乙個數字22,那麼它轉換的方式為22 10 12 0 則肯定先有乙個x,接著12 10 2 0 則接著在x後面加上x 變為xx 2 1 1 0 則肯定後面還需要新增乙個i變為xxi,1 1 0 0 後面還要新增乙個i變為xxii。這樣我...

整數轉換成羅馬數字

時間限制 1000ms 記憶體限制 65536k 給定乙個整數 num 將整數轉換成羅馬數字。如 1,2,3,4,5 對應的羅馬數字分別為i,ii,iii,iv,v等。第一行輸入乙個整數 num 1 num 3999 輸出 num 對應的羅馬數字。樣例輸入123 樣例輸出cxxiii 總結 一道簡單...

羅馬數字轉換成整數(注意羅馬數字的大小表示問題)

羅馬數字規則 1,羅馬數字共有7個,即i 1 v 5 x 10 l 50 c 100 d 500 和m 1000 羅馬數字中沒有 0 2,重複次數 乙個羅馬數字最多重複3次。3,右加左減 在較大的羅馬數字的右邊記上較小的羅馬數字,表示大數字加小數字。在較大的羅馬數字的左邊記上較小的羅馬數字,表示大數...