Roman Numerals Decoder
DESCRIPTION
Create a function that takes a Roman numeral as its argument and returns its value as a numeric decimal integer. You don’t need to validate the form of the Roman numeral.
Modern Roman numerals are written by expressing each decimal digit of the number to be encoded separately, starting with the leftmost digit and skipping any 0s. So 1990 is rendered “MCMXC” (1000 = M, 900 = CM, 90 = XC) and 2008 is rendered “MMVIII” (2000 = MM, 8 = VIII). The Roman numeral for 1666, “MDCLXVI”, uses each letter in descending order.
注意一点:题目没有描述,当较小的值出现在较大的值之前时,将从较大的值中减去该值。可参考文末的引用链接。
SOLUTION
1 | function solution(roman) { |
Reference
Roman Numerals Decoder
Converting Decimal Numbers to Roman Numerals with JavaScript: A step-by-step guide