Skip to content

Latest commit

 

History

History
27 lines (25 loc) · 631 Bytes

75. 字符串解码.md

File metadata and controls

27 lines (25 loc) · 631 Bytes

输入:s = "3[a]2[bc]" 输出:"aaabcbc"

class Solution(object):
    def decodeString(self, s):
        """
        :type s: str
        :rtype: str
        """
        stack=[]
        res = ''
        multi = 0

        for c in s:
            if '0' <= c <= '9':
                multi = 10*multi+int(c)
            elif c == '[':
                stack.append((res, multi))
                res = ''
                multi = 0
            elif c == ']':
                last_res, last_multi = stack.pop()
                res = last_res+res*last_multi
            else:
                res += c
        return res