#LEETCODE13. 羅馬數字轉整數
羅馬數字轉整數
題目描述
羅馬數字由七種不同的符號組成:I, V, X, L, C, D 和 M。
| 符號 | 值 |
|---|---|
| I | 1 |
| V | 5 |
| X | 10 |
| L | 50 |
| C | 100 |
| D | 500 |
| M | 1000 |
例如,數字 2 寫作 II,即兩個 1 相加。數字 12 寫作 XII,即 X + II。數字 27 寫作 XXVII,即 XX + V + II。
羅馬數字通常按照從大到小的順序書寫。然而,數字 4 不是 IIII,而是 IV。因為 I 在 V 之前,我們需要減去 1,因此得到 4。同樣的規則適用於數字 9(寫作 IX)。總共有以下六種減法規則:
I可以放在V(5) 和X(10) 之前來表示4和9。X可以放在L(50) 和C(100) 之前來表示40和90。C可以放在D(500) 和M(1000) 之前來表示400和900。
給定一個羅馬數字,將其轉換為整數。
範例 1
輸入:
III
輸出:
3
解釋:
III = 3。
範例 2
輸入:
LVIII
輸出:
58
解釋:
L = 50, V = 5, III = 3。
範例 3
輸入:
MCMXCIV
輸出:
1994
解釋:
M = 1000CM = 900XC = 90IV = 4
限制條件
1 <= s.length <= 15s僅包含字符'I', 'V', 'X', 'L', 'C', 'D', 'M'。- 保證
s是範圍[1, 3999]內的有效羅馬數字。
Related
In following homework: