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.

lock icon+22 pruebas ocultas al enviar

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í
Casos de prueba

Caso 1

Caso 2

Caso 3

Entrada

s = "XXVII"

Esperado

27