Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024
Problem description
Rzymskie liczby
(rzymskie-liczby)
Jasio jutro będzie pisał kartkówkę z zamiany liczb na system rzymski. Radzi sobie z tym dosyć słabo, dlatego jak zwykle prosi Cię o pomoc.
Oto zasady zapisywania liczb w systemie rzymskim:
- do zapisu liczb używa się wielkich liter alfabetu, przy czym
I
oznacza 1,V
oznacza 5,X
oznacza 10,L
oznacza 50,C
oznacza 100,D
oznacza 500,M
oznacza 1000, - litery zapisu każdej liczby są zapisane w kolejności nierosnących wartości liczbowych,
- niedopuszczalnym jest, aby obok siebie w zapisie liczby wystąpiły cztery takie same litery,
- wszystkie litery użyte do zapisu liczby rzymskiej są dodawane,
wyjątkiem jest sytuacja, w której przed literą o większej wartości
liczbowej znajduje się litera o mniejszej wartości liczbowej – wówczas
do sumy dodaje się różnicę wartości tych liter (np.
IV
oznacza 4 orazCM
oznacza 900), - jedyne cyfry, które mogą być postawione przed cyframi o większej
wartości to:
I
,X
,C
. Niedopuszczalnym jest zatem zapisVL
, a także zapisLM
, - jeśli decydujemy się postawić cyfrę o mniejszej wartości przed cyfrą
o większej wartości to musi być to cyfra pięciokrotnie lub
dziesięciokrotnie mniejsza. Niedopuszczalnym jest zatem zapis
IC
, a także zapisXD
.
Napisz program, który wczyta ze standardowego wejścia liczbę dziesiętną N, obliczy jej reprezentację rzymską i wypisze wynik na standardowe wyjście.
Wejście
W pierwszym i jedynym wierszu wejścia znajduje się jedna liczba naturalna N – jest to liczba, którą należy zamienić na liczbę rzymską.
Wyjście
W pierwszym i jedynym wierszu standardowego wyjścia wypisać należy liczbę rzymską, będącą odpowiednikiem liczby N.
Ograniczenia
1 ≤ N < 4 000
Przykład
Wejście | Wyjście | |
|
|