leetcode 每日一题 38. 外观数列

时间:2020-05-20 14:04:26   收藏:0   阅读:45

技术图片技术图片

双指针

思路:

一个指针负责遍历,另一个指针负责记录,遇到不同值时更新状态。

class Solution:
    def countAndSay(self, n: int) -> str:
        def getResult(para:str)->str:
            record = para[len(para)-1]
            result = "" 
            n = 0
            for i in para[::-1]:
                if i == record:
                    n += 1
                else:
                    result = result + record + str(n)
                    record = i
                    n = 1
            else:
                result = result + record + str(n)
            return result[::-1]
        res = "1"
        for i in range(1,n):
            res = getResult(res)
        return res

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!