资讯专栏INFORMATION COLUMN

LeetCode38.报数

xiguadada / 1151人阅读

摘要:报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下被读作一个一即。给定一个正整数,输出报数序列的第项。注意整数顺序将表示为一个字符串。示例输入输出示例输入输出答案参考

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

1

11

21

1211

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"

答案参考:

/**
 * @param {number} n
 * @return {string}
 */
var countAndSay = function(n) {
    let ans = "1"
    let i = 1
    while(i < n) {
        ans = say(ans)
        i++
    }
    return ans
};

function say(s){
    let curChar = s[0]
    let curCount = 1
    let ans = ""
    for (let i = 1; i < s.length; i++){
        if (s[i] == curChar){
            curCount++
        } else {
            ans += curCount + curChar
            curChar = s[i]
            curCount = 1
        }
    }
    ans += curCount + curChar
    return ans
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/101808.html

相关文章

  • 6-9月技术文章汇总

    摘要:分布式的管理和当我在谈论架构时我在谈啥状态码详解无状态协议和请求支持哪些方法分层协议栈有哪些数据结构运用场景说说你常用的命令为什么要有包装类面向对象的特征是啥是啥有什么好处系统设计工程在线诊断系统设计与实现索引背后的数据结构及算法原理软技能 HTTP 【HTTP】分布式session的管理 【HTTP】Cookie和Session 【HTTP】当我在谈论RestFul架构时我在谈啥?...

    miya 评论0 收藏0
  • LeetCode 攻略 - 2019 年 7 月上半月汇总(55 题攻略)

    摘要:微信公众号记录截图记录截图目前关于这块算法与数据结构的安排前。已攻略返回目录目前已攻略篇文章。会根据题解以及留言内容,进行补充,并添加上提供题解的小伙伴的昵称和地址。本许可协议授权之外的使用权限可以从处获得。 Create by jsliang on 2019-07-15 11:54:45 Recently revised in 2019-07-15 15:25:25 一 目录 不...

    warmcheng 评论0 收藏0
  • 环形报数-约瑟夫环

    摘要:问题描述已知个人编号围坐在一张圆桌周围。从编号为的人开始报数,数到的那个人出列他的下一个又从开始报数,数到的那个人又出列依次规律重复下去,直到圆桌周围的人全部出列。请编写一个程序,给定计算出列人员先后顺序。 问题描述 已知n个人(编号1、2、..n)围坐在一张圆桌周围。从编号为1的人开始报数,数到m的那个人出列;他的下一个又从1开始报数,数到m的那个人又出列;依次规律重复下去,直到圆桌...

    biaoxiaoduan 评论0 收藏0
  • Josephus Problem的详细算法及其Python、Java实现

    摘要:然而和他的朋友并不想遵从,要他的朋友先假装遵从,他将朋友与自己安排在第个与第个位置,于是逃过了这场死亡游戏。问最后一个人的最开始的编号是几先是笔者的朴素想法。这种想法虽然素朴,比较容易实现,但是时间复杂度为接着是数学方法。   笔者昨天看电视,偶尔看到一集讲述古罗马人与犹太人的战争——马萨达战争,深为震撼,有兴趣的同学可以移步:http://finance.ifeng.com/a/20...

    big_cat 评论0 收藏0
  • Josephus Problem的详细算法及其Python、Java实现

    摘要:然而和他的朋友并不想遵从,要他的朋友先假装遵从,他将朋友与自己安排在第个与第个位置,于是逃过了这场死亡游戏。问最后一个人的最开始的编号是几先是笔者的朴素想法。这种想法虽然素朴,比较容易实现,但是时间复杂度为接着是数学方法。   笔者昨天看电视,偶尔看到一集讲述古罗马人与犹太人的战争——马萨达战争,深为震撼,有兴趣的同学可以移步:http://finance.ifeng.com/a/20...

    yimo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<