d251. 94北縣賽-3-羅馬數字 (Roman)
標籤 :
通過比率 : 181人/184人 ( 98% ) [非即時]
評分方式:
Tolerant

最近更新 : 2009-05-02 21:11

內容

問題描述
       我們在書本章節及頁碼的編號上常可見到羅馬數字,羅馬數字是以I, V, X, L,
C, D, M 這七個符號,分別代表1, 5, 10, 50, 100, 500, 1000。其他的數目都是由這七
的符號組合而成。數目都是由左寫到右,其值即是組成的羅馬數字加起來的和。例
如:18 表示為 XVIII (即 10+5+1+1+1)。為了減化數目的表示方式,羅馬數字使用
減法來取代加法的規則。例如4 不用四個一相加來表示 IIII,而採用五減一來表示
IV,又如以IX 取代 VIIII 表示 9。簡單來說,當連續四個相同符號出現時,必須
用減法規則來化簡之,例如此題目必須以減法規則化簡的有:4 (IV)、9 (IX)、14
(XIV)、19 (XIX)、24 (XXIV)、29 (XXIX)、34 (XXXIV)、39 (XXXIX)、40 (XL)、
41(XLI)、42 (XLII)、43 (XLIII)、44 (XLIV)、45 (XLV)、46 (XLVI)、47 (XLVII)、
48 (XLVIII)、49 (XLIX)、54 (LIV)、59 (LIX)。
      假設歐洲某個古老的部落仍採用羅馬數字,此部落比台灣的時間慢7 小時30
分,現在請寫一個程式,讀入此部落以羅馬數字表示的時間,考慮時差後,計算出
台灣當時的時間,並以羅馬數字表示之,
舉例來說:

(1)此部落的時間為 VIII:XLII ( 8 時42 分),

     計算出台灣時間應為XVI:XII (16 時12 分)。


(2)此部落的時間為 XX:XXV ( 20 時25 分),

    計算出台灣時間應為III:LV (3 時55 分)。
條件限制
    1. 羅馬數字的七個符號皆以大寫字母表示。
    2. 因羅馬數字沒有0,所以輸入檔的時間及計算的結果不會有0 時或0 分出現。
    3. 輸入的時間大於0 時0 分,且小於24 時0 分,輸出的時間請以0~24 小時表示。

輸入說明
輸入檔內第一行的羅馬數字表示小時,第二行的羅馬數字表示分鐘。
輸出說明
請輸出以羅馬數字表示的台灣時間,輸出檔內第一行的羅馬數字表示小時,第二行
的羅馬數字表示分鐘。
範例輸入 #1
VIII
XLII
範例輸出 #1
XVI
XII
測資資訊:
記憶體限制: 512 MB
提示 :
標籤:
出處:
94學年度北基區資訊學科能力競賽 [管理者: nanj0178 (nanj) ]

本題狀況 本題討論 排行

編號 身分 題目 主題 人氣 發表日期
41186 1554101-0@g. ... (P6A29_1300題了) d251
Python 部分代碼
269 2024-07-09 22:24