报数

作者: 3ni | 来源:发表于2018-10-07 14:15 被阅读0次

报数序列是指一个整照其中的整数的顺序进数序列,按行报数,得到下一个数。其前五项如下:

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

1 被读作 "one 1" ("一个一") , 即 11
11被读作 "two 1s" ("两个一"), 即 21
21 被读作 "one 2", "one 1""一个二" , "一个一") , 即 1211

给定一个正整数 n(1 ≤ n ≤ 30),输出报数序列的第 n 项。
注意:整数顺序将表示为一个字符串。

示例 1:
输入: 1
输出: "1"

示例 2:
输入: 4
输出: "1211"

class Solution(object):
    def countAndSay(self, n):
        """
        :type n: int
        :rtype: str
        """
        if n == 1:
            return '1'
        nline = '1'
        for i in range(1, n):
            nline = deal(nline)
        return nline

def deal(s):
    line = ''
    i = 0
    while i < len(s):
        st = s[i]
        n = repeatnums(i, s)
        line += (str(n) + st)
        i += n
    return line

def repeatnums(index, s):
    d = s[index]
    n = 0
    for i in range(index, len(s)):
        if d == s[i]:
            n += 1
        else:
            return n
    return n

思路:关键是找到规律,从例子来看,单独一个数会变成两个数,一串重复(相邻)的数也会变成两个数,所以遍历字符串时,碰到单独的则转换为2个数字,碰到相邻重复的数,先统计有多少个重复,然后再进行转换。
下面例子为题意理解:
1 为一个一(11)
11为两个一(21)
111为三个一(31)
2为一个二(12)
22为两个二(22)
222为三个二(32)
2222为四个二(42)
12为一个一(11),一个二(12),最后为1112
123为一个一(11),一个二(12),一个三(13),最后为111213
1331为一个一(11),两个三(23),一个一(11),最后为112311

相关文章

  • 报数

    报数 报数指的是,按照其中的整数的顺序进行报数,然后得到下一个数。如下所示: 1, 11, 21, 1211, 1...

  • 报数

    题目描述 报数序列是指一个整照其中的整数的顺序进数序列,按行报数,得到下一个数。其前五项如下: 1 11 21 1...

  • 报数

    报数序列是指一个整照其中的整数的顺序进数序列,按行报数,得到下一个数。其前五项如下: 1 11 21 1211 1...

  • 报数

    报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下: 1 被读作 "one 1" ...

  • 报数

    凌晨一点多和一起上夜班的同事蹲在厂房后门的台阶上抽烟祛祛困意,“今天十五吗,月亮这么圆”老张趁着吐烟的间隙冷不丁问...

  • leecode刷题(18)-- 报数

    leecode刷题(18)-- 报数 报数 描述: 报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一...

  • 学报数

    今天的体育课我们班主要学报数。开始报数一、二、三、四、第五个报数错了,我就告诉你是五,又继续往下报数,反复练习报数...

  • 我们的命名,以方向图腾为名,分别是,玄武队,朱雀队,青龙队,白虎

    毛竹先生: 今天新人报数 毛竹先生: 凡是报数的,参与本次分组,不报数的,本周末会调整![玫瑰] 毛竹先生: 各位...

  • 一起玩游戏好吗?

    21点 玩法: 围圈, 大家开始报数, 1,2,3,4......被迫报数"21"的人为输,需惩罚. 报数过程中,...

  • [leetcode]报数

    报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下: 1 11 21 1211 11...

网友评论

      本文标题:报数

      本文链接:https://www.haomeiwen.com/subject/sqslaftx.html