leetcode_38

Posted 玉树临风獾獾欢

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode_38相关的知识,希望对你有一定的参考价值。

---恢复内容开始---

The count-and-say sequence is the sequence of integers with the first five terms as following:

1.     1
2.     11
3.     21
4.     1211
5.     111221

1 is read off as "one 1" or 11.
11 is read off as "two 1s" or 21.
21 is read off as "one 2, then one 1" or 1211.

Given an integer n where 1 ≤ n ≤ 30, generate the nth term of the count-and-say sequence.

Note: Each term of the sequence of integers will be represented as a string.

 

Example 1:

Input: 1
Output: "1"

Example 2:

Input: 4
Output: "1211"

SOLUTION1:
利用itertools中的groupby函数,还原过程:
import itertools


class Solution(object):
    def countAndSay(self, n):
        """
        :type n: int
        :rtype: str
        """
        s = 1
        for _ in range(n - 1):
            s = ‘‘.join(str(len(list(group))) + digit
                        for digit, group in itertools.groupby(s))
        return s

 

 

 

---恢复内容结束---

以上是关于leetcode_38的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode刷题记录_38. 报数

leetcode_38栈和深度优先搜索---- 克隆图

LeetCode_258_AddDigits

Leetcode38. 外观数列(简单模拟)

这些 C++ 代码片段有啥作用?

[AndroidStudio]_[初级]_[配置自动完成的代码片段]