計蒜客 挑戰難題 第14題 羅馬數字轉換成整數

2021-06-26 13:32:24 字數 779 閱讀 4364

記憶體限制 10000 k

時間限制 1000 ms

給定乙個羅馬數字s,( i<=s<=mmmcmxcix)(即1到3999),將羅馬數字轉換成整數。

如羅馬數字i,ii,iii,iv,v分別代表數字1, 2, 3, 4, 5。

格式:第一行輸入乙個羅馬數字,接下來輸出對應的整數。

首先要來了解一下羅馬數字表示法,基本字元有7個:i,v,x,l,c,d,m,分別表示1,5,10,50,100,500,1000。

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

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

2、小的數字在大的數字的右邊,所表示的數等於這些數字相加得到的數, 如:ⅷ = 8;ⅻ = 12;

3、小的數字,(限於ⅰ、x 和c)在大的數字的左邊,所表示的數等於大數減小數得到的數,如:ⅳ= 4;ⅸ= 9;

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

樣例輸入

cxxiii

樣例輸出

123

僅供參考:

#include #include void main()

{ char s[100];

int i,len,count=0;

scanf("%s",&s);

len= strlen(s);

for(i=0;i

計蒜客 挑戰難題 第5題 矩陣翻轉

記憶體限制 10000 k 時間限制 1000 ms 曉萌最近在做乙個翻轉的應用,你可能也知道,其實是由乙個個的點組成的。於是,曉萌想先做乙個可以翻轉矩陣的程式,來解決他問題的核心部分。輸入第一行包括由空格分開的整數m n t 0 m 200,0 n 200,t 0或1 其中m和n分別表示待處理矩陣...

計蒜客 難題題庫 014 羅馬數字轉換成整數

給定乙個羅馬數字s,i s mmmcmxcix 即1到3999 將羅馬數字轉換成整數。如羅馬數字i,ii,iii,iv,v分別代表數字1,2,3,4,5。格式 第一行輸入乙個羅馬數字,接下來輸出對應的整數。首先要來了解一下羅馬數字表示法,基本字元有7個 i,v,x,l,c,d,m,分別表示1,5,1...

計蒜客 挑戰難題 第20題 跳躍遊戲二

時間限制 1000 ms 記憶體限制 10000 k 給定乙個非負整數陣列,假定你的初始位置為陣列第乙個下標。陣列中的每個元素代表你在那個位置能夠跳躍的最大長度。你的目標是到達最後乙個下標,並且使用最少的跳躍次數。例如 a 2,3,1,1,4 到達最後乙個下標的最少跳躍次數為2.先跳躍1步,從下標0...