131. 分割回文串

在這裏插入圖片描述

class Solution:
    def partition(self, s):
        """
        :type s: str
        :rtype: List[List[str]]
        """
        results = [[s[0]]]
        for c in s[1:]:
            for r in results:
                r.append(c)
                
            extra = []
            for r in results:
                if len(r) > 1:
                    p = r[-2] + r[-1]
                    if p == p[::-1]:
                        extra.append(r[:-2] + [p])
                    elif len(r) > 2:
                        p = r[-3] + r[-2] + r[-1]
                        if p == p[::-1]:
                            extra.append(r[:-3] + [p])
                            
            results.extend(extra)
        return results 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章