Create mapper array to map number to symbol
Time Complexity : O (log(num))
Space Complexity: O(log(num))
class Solution(object):
def intToRoman(self, num):
"""
:type num: int
:rtype: str
"""
romans = [(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')]
result = ""
for base, symbol in romans:
if num >= base:
result += symbol * (num // base)
num = num % base
return result
No comments:
Post a Comment