Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Speedy category for Roman Numerals by imratnesh
symbols = [(1000, 'M'), (900, 'CM'), (500, 'D'), (400, 'CD'), (100, 'C'), (90, 'XC'),
(50, 'L'), (40, 'XL'), (10, 'X'), (9, 'IX'), (5, 'V'), (4, 'IV'), (1, 'I')]
## 4 and 9 is imp
def checkio(data):
#replace this for solution
res =''
for val,key in symbols:
while val<=data:
data = data-val
res += ''.join(key)
print(res)
return res
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert checkio(6) == 'VI', '6'
assert checkio(76) == 'LXXVI', '76'
assert checkio(499) == 'CDXCIX', '499'
assert checkio(3888) == 'MMMDCCCLXXXVIII', '3888'
Feb. 15, 2018