133. 罗马数字转换为整数
分享给更多人
容易 -通过 / -执行
罗马数字(Roman numerals) 由如下7种记号排列而成。
Symbol | I | V | X | L | C | D | M |
---|---|---|---|---|---|---|---|
Value | 1 | 5 | 10 | 50 | 100 | 500 | 1000 |
Standard form表示中,subtractive notation 将发生作用,意味着4 是IV
而不是IIII
,9 是IX
而不是VIIII
,该规则适用于40(XL
)和 900(CM
)等等。
简单来说,罗马数字遵从如下规则。
- 记号从左往右,值从大到小进行排列。
- 从左往右,如果下一个记号的值更大,则代表减法,否则是加法。
请实现romanToInteger()
,传入的罗马数字字符串均为有效。
romanToInteger('CXXIII')// 123romanToInteger('MCMXCIX')// 1999romanToInteger('MMMCDXX')// 3420