Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Reverse Roman Numerals by J.W
from collections import OrderedDict
Decimal_Roman = OrderedDict({'CM':900, 'CD':400, 'XC':90, 'XL':40, 'IX':9, 'IV':4, 'M':1000, 'D':500, 'C':100, 'L':50, 'X':10, 'V':5, 'I':1})
def reverse_roman(line):
result = 0
for key, value in Decimal_Roman.items():
result += (line.count(key) * value)
line = line.replace(key, '')
return result
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert reverse_roman('VI') == 6, '6'
assert reverse_roman('LXXVI') == 76, '76'
assert reverse_roman('CDXCIX') == 499, '499'
assert reverse_roman('MMMDCCCLXXXVIII') == 3888, '3888'
print('Great! It is time to Check your code!');
April 4, 2018
Comments: