11791. Римські в цілі


Відправити розв'язок

Бали: 100
Time limit: 4.0s
Memory limit: 500M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Римські цифри позначаються сімома різними символами: I, V, X, L, C, D і M.

Значення символу

  • I - 1
  • V - 5
  • X - 10
  • L - 50
  • C - 100
  • D - 500
  • М - 1000

Наприклад, 2 записується як II римськими цифрами, додавши лише дві одиниці. 12 записується як XII, тобто просто X + II. Число 27 записується як XXVII, тобто XX + V + II. Римські цифри зазвичай пишуться від найбільшої до найменшої зліва направо. Проте числівник чотири не є ІІІІ. Натомість число чотири пишеться як IV. Оскільки одиниця стоїть перед п'ятіркою, ми віднімаємо її, утворюючи чотири. Той самий принцип застосовується до числа дев'ять, яке записується як IX. Існує шість випадків використання віднімання:

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

Дано \(S\) - запис римського числа. Перетворити його на ціле число.

Формат вхідних даних

Вхідний потік містить рядок \(S\)

Формат вихідних даних

У вихідний потік вивести відповідь.

Обмеження

  • \(1 \le |S| \le 15\)
  • \(S\) містить лише символи ('I', 'V', 'X', 'L', 'C', 'D', 'M').
  • Гарантується, що \(S\) є дійсною римською цифрою в діапазоні [1, 3999].

Приклад вхідних даних

III

Приклад вихідних даних

3

Приклад вхідних даних

IX

Приклад вихідних даних

9

Приклад вхідних даних

XIV

Приклад вихідних даних

14

Коментарі

Ще немає коментарів.