CHECKSSUBTRACTIVE = {"IV": 2, "IX": 2, "XL": 20, "XC": 20, "CD": 200, "CM": 200}
VALUES = {"I": 1, "V": 5, "X":10, "L": 50, "C": 100, "D": 500, "M": 1000}
def roman_to_int(roman: str) -> int:
number = sum(VALUES[ch] for ch in roman)
number -= sum(val for key, val in CHECKSSUBTRACTIVE.items() if key in roman)
return number
Although I'm not a fan ofAlthough I'm not a fan of CHECKS, but a better concise name is escaping me. Now using CHECKSSUBTRACTIVE, but a better concise name is escaping me as suggested by JollyJoker.