Получи случайную криптовалюту за регистрацию!

Задача: Перевод римских цифр в арабские Разбираю очередную за | Easy JS

Задача: Перевод римских цифр в арабские

Разбираю очередную задачу с leetcode.

Дана римская цифра, преобразуйте ее в целое число. Римские цифры представлены семью различными символами: I, V, X, L, C, D и M (чему они равны показано на втором скрине).

Римские цифры обычно пишутся слева направо от большего к меньшему. Однако цифра четыре не IIII. Вместо этого цифра четыре пишется как IV. Так как единица предшествует пятерке, мы вычитаем ее и получаем четыре. Тот же принцип применим к числу девять, которое пишется как IX. Есть шесть случаев, когда используется вычитание:

I можно поставить перед V (5) и X (10), чтобы получились 4 и 9.
X можно поставить перед L (50) и C (100), чтобы получилось 40 и 90
C можно поставить перед D (500) и M (1000), чтобы получились 400 и 900.

Пример 1:
Ввод: s = "III"
Вывод: 3
Объяснение: III = 3.

Пример 2:
Ввод: s = "LVIII"
Вывод: 58
Объяснение: L = 50, V= 5, III = 3.

Пример 3:
Ввод: s = "MCMXCIV"
Вывод: 1994
Объяснение: M = 1000, CM = 900, XC = 90 and IV = 4.

Пишите свои версии в комментариях.

Ответ с объяснением

#algorithms