12. Integer to Roman

#Medium

if-else to solve. Be careful with edge case.

其实很简单

class Solution(object):
    def intToRoman(self, num):
        """
        :type num: int
        :rtype: str
        """
        roman = ""
        if num >= 1000:
            l000 = ['M', 'MM', 'MMM']
            temp = num//1000
            num = num%1000
            roman += l000[temp-1]
        
        if num >= 100:
            l00 = ['C', 'CC', 'CCC', 'CD', 'D', 'DC', 'DCC', 'DCCC', 'CM']
            temp = num//100
            num = num%100
            roman += l00[temp-1]
            

        if num >= 10:
            l0 = ['X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC']
            temp = num//10
            num = num%10
            roman += l0[temp-1]
        
        if num > 0:
            l = ['I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX']
            temp = num
            print(temp)
            roman += l[temp-1]
                    
        return roman

Last updated