Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Roman Numerals by asmihailov
def checkio(data):
result = ('', 'M', 'MM', 'MMM')[int (data / 1000)]
result += ('','C','CC','CCC','CD','D','DC','DCC','DCCC','CM')[int ((data % 1000) / 100)]
result += ('','X','XX','XXX','XL','L','LX','LXX','LXXX','XC')[int (((data % 1000) % 100) / 10)]
result += ('','I','II','III','IV','V','VI','VII','VIII','IX')[int (((data % 1000) % 100) % 10)]
return result
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'
Sept. 26, 2014