Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Replace and Count solution in Creative category for Reverse Roman Numerals by cs1g
def reverse_roman(roman_string):
for before, after in [('CM', 'DCCCC'), ('CD', 'CCCC'),
('XC', 'LXXXX'), ('XL', 'XXXX'),
('IX', 'VIIII'), ('IV', 'IIII')]:
roman_string = roman_string.replace(before, after)
return (1000 * roman_string.count('M') + 500 * roman_string.count('D') +
100 * roman_string.count('C') + 50 * roman_string.count('L') +
10 * roman_string.count('X') + 5 * roman_string.count('V') +
roman_string.count('I'))
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!');
July 4, 2017
Comments: