Easy
, Msc
Question
將一個整數轉化為羅馬數字
Notes
假設數字范圍1到 3999
Solution
羅馬數字和數字的對應關系如下表
Roman to Integer
將相減的特殊情況都放到map中。
class Solution(object):
def intToRoman(self, num):
"""
:type num: int
:rtype: str
"""
values = [1000,900,500,400,100,
90,50,40,10,9,5,4,1]
symbols = ['M','CM','D','CD',
'C','XC', 'L', 'XL',
'X', 'IX', 'V', 'IV', 'I']
i = 0
ret = ''
while num>0:
k = num/values[i]
for j in xrange(k):
ret += symbols[i]
num -= values[i]
i += 1
return ret