[問題] 羅馬數字轉換 求教

看板C_and_CPP作者 (里歐)時間8年前 (2015/10/19 11:54), 編輯推噓4(408)
留言12則, 8人參與, 最新討論串1/1
各位前輩好 想請教一下, 如果要做一個[羅馬數字轉阿拉伯數字轉換器] 使用C語言,且不能使用string, 請個位前輩給我一點方向 ex: 輸入 MMVII 得到 2007 輸入 MMCM 得到 2900 目前卡住的地方 1.如何讀取一連串的字元 ex MMCCI 2.如何用C語言寫出左減規則 ex IV =5-1=4 感謝各位前輩! -- Sent from my Android -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 117.19.145.172 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1445226858.A.8DE.html

10/19 12:33, , 1F
一個一個char讀 另外把「前一個字元」存起來
10/19 12:33, 1F

10/19 12:49, , 2F
我建議也是一個一個char讀,但是「偷看下一個是什麼」
10/19 12:49, 2F

10/19 12:50, , 3F
原理都一樣,偷看下一個在實作上會稍微簡單些
10/19 12:50, 3F

10/19 13:06, , 4F
整串進陣列,然後取斷點處理
10/19 13:06, 4F

10/19 13:58, , 5F
Leetcode上面有答案
10/19 13:58, 5F

10/19 21:57, , 6F
有個簡單的作法是把IV, IX這類的東西當成另外一個單位
10/19 21:57, 6F

10/19 23:29, , 7F
讀取一各各字元然後索引0先以加的方式之後的索引要參考前者
10/19 23:29, 7F

10/19 23:31, , 8F
索引是不是MAP到的值較小就把它扣除(要扣除包含一開始加的
10/19 23:31, 8F

10/20 03:08, , 9F
實作一下,發現存「前一個字元」的判斷就會以「前一個
10/20 03:08, 9F

10/20 03:09, , 10F
字元」為主,所以最後跟「偷看下一個」也沒啥差別 >_<
10/20 03:09, 10F

10/20 16:45, , 11F
輸入一定合法嗎
10/20 16:45, 11F

10/31 07:58, , 12F
文章代碼(AID): #1M96bgZU (C_and_CPP)