Menu
CoddyTech

Roman to Integer

Los números romanos usan siete símbolos: I = 1, V = 5, X = 10, L = 50, C = 100, D = 500 y M = 1000. Los símbolos se escriben de mayor a menor y se suman, excepto en seis pares sustractivos en los que aparece primero un símbolo menor y se resta del mayor: IV = 4, IX = 9, XL = 40, XC = 90, CD = 400 y CM = 900.

Se te da un número romano válido s. Devuelve el entero que representa.

Función

romanToInt(s: string) → integer
sstring
un número romano válido en letras mayúsculas
Devuelveinteger
el valor del numeral, de 1 a 3999

Restricciones

  • 1 ≤ s.length ≤ 15
  • s contiene solo los caracteres I, V, X, L, C, D y M.
  • s es un numeral romano válido para un valor del 1 al 3999.

Ejemplos

Entrada
s = "XXVII"
Salida
27
Explicación
XX es 10 + 10, V es 5 y II es 1 + 1, así que el total es 27. Ningún símbolo va seguido de uno más grande, así que se suman todos los símbolos.
challenge icon

Para ir más allá

¿Puedes escribir la operación inversa, convirtiendo un entero del 1 al 3999 en su número romano?

Restablecer código
def romanToInt(s):
    # Escribe el código aquí

Prueba #1

Prueba #2

Prueba #3

Argumento

s = "XXVII"

Salida Esperada

27