有天你喜歡上了一個女孩子,因此決定向其告白。但卻得到如此回應:
「我很喜歡羅馬數字,如果你能通曉羅馬數字,我們可以試著交往看看。
但是如果你不能…雖然你是個好人,但我還是不得不拒絕你。」
因此你決定開始苦讀羅馬數字,最後你整理出了一些規律;
但有時還是難以判斷,因為實在太複雜了;因此身為西斯(cis)社社員的你,
決意寫個程式既可將羅馬數字轉為阿拉伯數字,又可將阿拉伯數字轉回羅馬數字。
想必這程式能給喜歡羅馬數字的她一個驚喜,別再猶豫了─動工吧!
另,請注意她是有可能使用不合法羅馬數字來考驗你的程式的喔!小心別出糗啦。
規則如下:
一、符號 I=1,V=5,X=10,L=50,C=100,D=500,M=1000。
二、一個位數僅由一組符號代表,一組符號中有加有減。
三、一組符號中小者若置於大者左為減,置於大者右為加。
四、若為減者至多一個符號,為加者至多三個符號。
五、負數或0無法用羅馬數字表達,因此請視為不合法。
輸入包含多組測試資料,每組一行,每行有一數字或字串。
並且不會有不合法之字元出現,也不會阿拉伯數字與羅馬數字一同出現。
請讀入至檔案結尾為止。一列的長度至多 50 字元。
對每一組測試資料皆輸出一列,若輸入不合法則輸出Invalid.
若合法,則對於羅馬數字輸出阿拉伯數字,對阿拉伯數字輸出羅馬數字。
你真的看清楚題目了嗎?
原TIOJ1303 / TFcis9 留社考(prob 9)。Problem Setter:sa072686。
No. | Testdata Range | Score |
---|---|---|
1 | 0 | 25 |
2 | 1 | 25 |
3 | 2 | 25 |
4 | 3 | 25 |