Menu
CoddyTech

Integer to Roman

Liczby rzymskie mają siedem liter: M 1000, D 500, C 100, L 50, X 10, V 5 i I 1. Litery układa się od największej do najmniejszej i dodaje, więc 7 to VII. Żadna litera nie powtarza się cztery razy z rzędu: 4, 9, 40, 90, 400 i 900 zapisuje się jako IV, IX, XL, XC, CD i CM — mniejsza litera przed większą oznacza odejmowanie. Tylko w tych sześciu parach mniejsza litera występuje jako pierwsza.

Dla liczby całkowitej num zwróć jej zapis cyframi rzymskimi.

Funkcja

intToRoman(num: integer) → string
numinteger
liczba całkowita od 1 do 3999
Zwracastring
liczba rzymska dla num zapisana wielkimi literami

Ograniczenia

  • 1 ≤ num ≤ 3999

Przykłady

Wejście
num = 49
Wyjście
"XLIX"
Wyjaśnienie
49 to 40 + 9, więc zapis to XL, a potem IX: XLIX. IL jest niedozwolone, ponieważ I odejmuje się tylko w IV i IX.
challenge icon

Pytanie dodatkowe

Mając dany ciąg znaków, czy potrafisz sprawdzić, czy jest on prawidłową liczbą rzymską w standardowym zapisie, akceptując XLIX i odrzucając IIII, IL oraz VX?

Zresetuj kod
def intToRoman(num):
    # Napisz kod tutaj

Test #1

Test #2

Test #3

Argument

num = 49

Oczekiwany wynik

"XLIX"