Look-and-say sequence is a sequence of integers as the following:

D, D1, D111, D113, D11231, D112213111, ...

where D is in [0, 9] except 1. The (n+1)st number is a kind of description of the nth number. For example, the 2nd number means that there is one D in the 1st number, and hence it is D1; the 2nd number consists of one D (corresponding to D1) and one 1 (corresponding to 11), therefore the 3rd number is D111; or since the 4th number is D113, it consists of one D, two 1's, and one 3, so the next number must be D11231. This definition works for D = 1 as well. Now you are supposed to calculate the Nth number in a look-and-say sequence of a given digit D.

Input Specification:

Each input file contains one test case, which gives D (in [0, 9]) and a positive integer N (≤ 40), separated by a space.

Output Specification:

Print in a line the Nth number in a look-and-say sequence of D.

Sample Input:

1 8

Sample Output:

1123123111

 #include <stdio.h>
#include <algorithm>
#include <iostream>
#include <map>
#include <vector>
#include <set>
using namespace std;
const int maxn=;
int n,m,k;
int seq[][maxn];
int cnt;
int main(){
scanf("%d %d",&n,&m);
seq[][]=n;
if(m==)printf("%d",n);
cnt=;
for(int i=;i<m;i++){
k=;
int now=seq[i-][],num=;
for(int j=;j<cnt;j++){
if(seq[i-][j]==now){
num++;
}
else{
seq[i][k]=now;
seq[i][k+]=num;
now=seq[i-][j];
num=;
k+=;
}
}
seq[i][k]=now;
seq[i][k+]=num;
k+=;
cnt=k;
}
for(int j=;j<k;j++){
printf("%d",seq[m-][j]);
}
}

注意点:题目看了半天没懂,后来看懂了点理解的是前一个序列有几个什么然后输出,然后第六个样例怎么看都不对。看了大佬的思路,原来是有几个连续的数字,然后输出来。那既然n最大就40,设个二维数组直接枚举就好了,maxn一开始只设了10010,发现最后一个测试点错了,最后一个测试点应该是n=40,结果很大,maxn为1e5就够了

最新文章

  1. Spring 事务详解
  2. mysql 注释
  3. LTIB常用命令1
  4. Code First 约定
  5. IE8的Textarea滚动条乱跳的解决方案
  6. Java SE7新特性之try-with-resources语句
  7. jquery的ajax方法:ajaxStart()和ajaxStop()
  8. Struts2请求处理流程及源码分析
  9. Java虚拟机之垃圾回收详解一
  10. 关于元素加上margin属性后以谁为基准移动的问题及负margin的问题
  11. 扩展方法where方法查询不到数据,不会抛异常,也不是返回的null
  12. shell sed
  13. 最简化模型2——css3分阶段动画效果(经过实测)之转动的div
  14. rod cutting
  15. MT【10】和三次有关的一个因式分解
  16. 区块链与Git版本工具的比较
  17. BZOJ3601 一个人的数论
  18. python&#160;以单例模式封装logging相关api实现日志打印类
  19. luogu 1066 引水入城(bfs+贪心)
  20. [BZOJ2809&amp;1455&amp;1367]解题报告|可并堆

热门文章

  1. html页面边框的另一种写法
  2. HTML5实现video标签的自定义播放进度条
  3. (网页)javascript小技巧(非常全)
  4. C语言编程比赛WBS
  5. Spring Data JPA方法定义规范
  6. Json Schema的使用
  7. 串口-CreateFile的使用
  8. java 操作elasticsearch之搭建测试项目环境
  9. Skip-Gram模型
  10. linux命令总结之tr命令