博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从头做leetcode之leetcode 37 解数独
阅读量:2435 次
发布时间:2019-05-10

本文共 1075 字,大约阅读时间需要 3 分钟。

38.外观数列

「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。前五项如下:

  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 项。

注意:整数序列中的每一项将表示为一个字符串。

  • 遍历结果字符串,用一个辅助字符串保存结果
class Solution {public:    string countAndSay(int n) {        string ass;        string res="1";        while(n-1){            int i=0;            while(i < res.size()){                if(i+2 < res.size() && res[i] == res[i+1] && res[i] == res[i+2]){                    ass.push_back('3');                    ass.push_back(res[i]);                    i=i+3;                }                if(i+1 < res.size() && res[i] == res[i+1]){                    ass.push_back('2');                    ass.push_back(res[i]);                    i=i+2;                }                else{                    ass.push_back('1');                    ass.push_back(res[i]);                    i++;                }            }            res=ass;            ass="";            n--;        }        return res;    }};

通过时间:

在这里插入图片描述

转载地址:http://hiemb.baihongyu.com/

你可能感兴趣的文章
手撕HashMap的resize()方法源码渗透解析+图解
查看>>
Mybatis常见异常类型Could not set parameters for mapping离不开这个原因!
查看>>
Thymeleaf中一个页面怎么嵌套另一个页面,关于页面嵌套,标签告诉你应该知道的
查看>>
JAVA如何实现短信验证码--阿里云接口,新手式图文教学,个人项目有这一篇就够了
查看>>
Java中大小数BigDecimal的加减乘除用法及场景的详细介绍,看完不信你还会报Syntax error on token “+/-/*“, invalid AssignmentOperat异常
查看>>
UVa 10917 Dijkstra
查看>>
CF403B/CF402D
查看>>
CF402E / 403C
查看>>
cf404b
查看>>
cf404c
查看>>
cf404d
查看>>
武大网络预赛 Problem 1545 - I - Twenty-four
查看>>
ZOJ Problem Set - 3768 Continuous Login
查看>>
某山面试 3、实现如下函数:
查看>>
malloc的小知识
查看>>
UVALive 6755 - Swyper Keyboard
查看>>
uva_11029 Leading and Trailing 快速幂 数的n次方前几位
查看>>
uva10023 手算开方的方法
查看>>
欧拉函数——从容斥定理和积性函数的性质谈开
查看>>
容斥原理 带禁止位的排列
查看>>