zoukankan      html  css  js  c++  java
  • Leetcode_38【报数】

    文章目录:

    • 题目
    • 脚本一
    • 脚本一逻辑
    • shell处理分享

    题目:

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

    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"


    脚本一:【用时:40ms】

    class Solution:
        def countAndSay(self, n: int) -> str:
            str1 = ""
            str2 = ""
            if n == 0 :
                return(None)
            for i in range(n):
                if i == 0:
                    str1 = "1"
                elif i == 1:
                    str1 = "11" 
                else:
                    str2 = ""
                    n1 = 0
                    for i in range(len(str1) - 1):
                        if str1[i] == str1[i + 1]:
                            n1 += 1
                            if i == len(str1) - 2:
                                n1 += 1
                                str2 += str(n1) + str1[i]
                        else:
                            n1 += 1
                            str2 += str(n1) + str1[i]
                            n1 = 0 
                            if i == len(str1) - 2:
                                n1 += 1
                                str2 += str(n1) + str1[i+1]
                    str1 = str2
            return(str1)    

    脚本一逻辑:

    1. 此题的关键是处理字符串中相同的元素和不同的元素,以及字符串边界的处理
    2. 更多的细节需要根据情况修改脚本的漏洞

    shell处理分享:

    • 由于shell中的sort命令的特点【与python不一样】
    • 使用shell处理此题就很方便
    • https://blog.csdn.net/weixin_43428906/article/details/102888909
  • 相关阅读:
    java往文本文件中写入信息并修改
    idea中写servlet时报错--关于405错误
    关于引入js文件乱码的问题
    关于HTML的引入CSS文件问题
    后缀算法
    vim中 E212:无法打开并写入文件的解决办法
    Restful风格API
    Restful概念
    Andriod实现推送的解决方案(转)
    IOS系统推送原理
  • 原文地址:https://www.cnblogs.com/mailong/p/12070853.html
Copyright © 2011-2022 走看看