C++算法:报数

这篇博客介绍了如何用C++解决LeetCode上的数列报数问题。题目要求根据给定的整数n生成数列的第n项,数列的特点是通过报数得到下一个数字。例如,数列的前几项是1, 11, 21, 1211, 111221。博主分享了思路,即利用两个向量temp1和temp2来动态存储和更新序列,并给出了详细的代码实现。" 125927942,7926920,Ramda在前端数据处理中的实用方法,"['前端开发', 'javascript', '数据处理', 'Ramda']
摘要由CSDN通过智能技术生成

leetcode相关C++算法解答: https://github.com/Nereus-Minos/C_plus_plus-leetcode

题目:

报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:
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 项。注意:整数顺序将表示为一个字符串。

思路:

使用一个vecotrtemp1存储每次报数的数,如第一次存1,第二次存的是11,…,每次通过vecotrtemp2来更新,当报数到n时,停止,并将temp1中数字转换为字符串;
//求取下一次报数的数:每次判断temp1[j]是否等于temp1[j+1],等于则将计数器加1;不等于说明同一个数结束,此时将count和temp1[j]压入temp2中。

代码:

//思路:使用一个vecotr<int>temp1存储每次报数的数,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值