- 浏览: 184668 次
- 性别:
- 来自: 济南
文章分类
最新评论
The count-and-say sequence is the sequence of integers beginning as follows:
1, 11, 21, 1211, 111221, ...
1 is read off as "one 1" or 11.
11 is read off as "two 1s" or 21.
21 is read off as "one 2, then one 1" or 1211.
Given an integer n, generate the nth sequence.
Note: The sequence of integers will be represented as a string.
一道很有意思的题目,第一个状态为1,第二个状态为11(一个1),第三个状态为21(两个1),第四个状态为1211(一个2和一个1),第五个状态为111221(一个1,一个2,两个1),. . .,让我们找到第n个状态。我们可以从第一个状态开始处理,一直衍生到第n个状态。当然状态衍生下一代时,我们从第一个数子开始比较,用一个计数counter来记录相同数字的个数,遇到不同的就讲当然counter的值和当然数字加入到字符串中,同时将counter置1,这样一直遍历完当前的状态,从而得到下一个状态。代码如下:
1, 11, 21, 1211, 111221, ...
1 is read off as "one 1" or 11.
11 is read off as "two 1s" or 21.
21 is read off as "one 2, then one 1" or 1211.
Given an integer n, generate the nth sequence.
Note: The sequence of integers will be represented as a string.
一道很有意思的题目,第一个状态为1,第二个状态为11(一个1),第三个状态为21(两个1),第四个状态为1211(一个2和一个1),第五个状态为111221(一个1,一个2,两个1),. . .,让我们找到第n个状态。我们可以从第一个状态开始处理,一直衍生到第n个状态。当然状态衍生下一代时,我们从第一个数子开始比较,用一个计数counter来记录相同数字的个数,遇到不同的就讲当然counter的值和当然数字加入到字符串中,同时将counter置1,这样一直遍历完当前的状态,从而得到下一个状态。代码如下:
public class Solution { public String countAndSay(int n) { if(n <= 0) return ""; String result = "1"; int i = 1; while(i < n) { StringBuilder sb = new StringBuilder(); int count = 1; for(int j = 1; j < result.length(); j++) { if(result.charAt(j) == result.charAt(j - 1)) { count ++; } else { sb.append(count); sb.append(result.charAt(j - 1)); count = 1; } } sb.append(count); sb.append(result.charAt(result.length() - 1)); result = sb.toString(); i ++; } return result; } }
发表评论
-
498. Diagonal Traverse
2019-11-15 13:52 269Given a matrix of M x N eleme ... -
496 Next Greater Element I
2019-11-14 13:50 271You are given two arrays (witho ... -
Word Break II
2016-03-09 03:15 388Given a string s and a dictiona ... -
Insert Interval
2016-03-08 02:11 378Given a set of non-overlapping ... -
Merge Intervals
2016-03-07 05:25 503Given a collection of intervals ... -
Merge k Sorted Lists
2016-03-07 04:03 567Merge k sorted linked lists and ... -
Multiply Strings
2016-03-06 07:27 482Given two numbers represented a ... -
N-Queens II
2016-03-06 03:06 666Follow up for N-Queens problem. ... -
N-Queens
2016-03-06 02:47 472The n-queens puzzle is the prob ... -
First Missing Positive
2016-03-05 03:09 432Given an unsorted integer array ... -
Spiral Matrix
2016-03-04 03:39 582Given a matrix of m x n element ... -
Trapping Rain Water
2016-03-04 02:54 590Given n non-negative integers r ... -
Repeated DNA Sequences
2016-03-03 03:10 429All DNA is composed of a series ... -
Increasing Triplet Subsequence
2016-03-02 02:48 904Given an unsorted array return ... -
Maximum Product of Word Lengths
2016-03-02 01:56 933Given a string array words, fin ... -
LRU Cache
2016-02-29 10:37 606Design and implement a data str ... -
Super Ugly Number
2016-02-29 07:07 690Write a program to find the nth ... -
Longest Increasing Path in a Matrix
2016-02-29 05:56 855Given an integer matrix, find t ... -
Coin Change
2016-02-29 04:39 788You are given coins of differen ... -
Minimum Height Trees
2016-02-29 04:11 721For a undirected graph with tre ...
相关推荐
Leetcode原题Count and Say count-and-say序列是整数序列,前五个术语如下: 1. 1 2. 11 3. 21 1211 5. 111221 1被读作“1”或11。 11被读作“两个1”或21。 21被读作“一个2,然后一个1”或1211。 给定整数n,...
2B的每个单元则有四个板块,与1B相比,去掉了"Look and read"板块,而增加了更多互动性的活动,如Draw and say/Act and say/Count and say/Play a game/Do a survey。 《活动手册·1B/2B》作为配套教材,每个单元都...
js js_leetcode题解之38-count-and-say.js
在LeetCode平台上,面试题38(也称为"Count and Say")是关于字符串处理的一个有趣问题,被称为“外观数列”。这道题目的目标是根据给定的数字序列构建一个新的序列,其中每个数字表示原序列中连续相同数字的个数。...
第38题,名为“外观数列”(Count and Say),是一道有趣的题目,旨在考察程序员对字符串处理和迭代的理解。在这个问题中,我们需要构建一个序列,其中每个数字都是前一个数字的描述。 外观数列的定义如下:序列1...
“Count and say”环节旨在训练学生的计数能力,通过提问“What’s missing?”(少了什么?),让学生在一系列物品中识别缺失的部分,比如“six balloons, three books, one birthday cake, two pencil-boxes”(六...
接下来,通过“Count and say how many”的活动,孩子们被引导进行实际的计数练习。例如,“How many? How many?”这样的问题鼓励孩子们数出物品的数量,并用英语回答。这种方式不仅帮助他们学习数字,还能提高他们...
“外观数列”(Count and Say Sequence)是指一个序列,它的第n项是由前一项生成的。生成规则如下:读取上一项中的每一个数字,然后计数该数字在上一项中出现的次数,最后按照这个顺序写出计数结果。例如,序列的第...
这篇文档是针对小学英语课程的一份课后练习,主题为"生日快乐",具体是Unit 6 Part A的第一课时,包含Let's talk和Count and say两个部分。这份练习主要训练学生的听力理解能力和基础语法知识,包括句型识别、数量...
Part A Let's talk&Count and say 1. 学习目标:学习单词"plate",掌握"How many ⋯ ?"句型在询问数量中的应用,并用1-5的英文数字进行回答。同时,强调对他人表达生日祝福和关爱妈妈的礼仪教育。 2. 教学重难点...
- Count and Say(计数和读法):一种涉及生成下一个字符串序列的方法。 - Longest Common Prefix(最长公共前缀):处理字符串数组中的公共前缀问题。 - Simplify Path(简化路径):使用栈处理文件路径问题。 ...
- 计数和说(Count and Say)。 2. **数组**: - 删除数组中的指定元素。 - 寻找数组中和为 K 的子数组。 - 找到最接近目标和的子数组。 - 恢复旋转排序数组。 - 排除自身的产品。 - 分割数组使奇数和偶数...
- Count and Say(猜数字序列) - **Integer Array**(整型数组操作) - Remove Element(移除元素) - Zero Sum Subarray(连续子数组的最大和) - Subarray Sum K(子数组总和等于K) - Subarray Sum Closest...
3.12 Count and Say 3.13 变位词 3.14 简化系统路径 3.15 最后一个单词的长度 3.16 反转字符串中的单词 3.16.1 字符串前后和中间可能存在多个空格 3.16.2 不存在前后和中间的多余空格 3.17 一个编辑距离 4. 栈 4.1 ...
I'll keep updating for full summary and better solutions. Stay tuned for updates. (Notes: "馃摉" means you need to subscribe to [LeetCode premium membership](https://leetcode.com/subscribe/) for the ...
- Count and Say: 第n个数是“1”,“21”,“1211”,“111221”等描述的下一个数。 - Combination Sum: 找出所有相加之和为特定值的组合。 - First Missing Positive: 找出数组中缺失的最小正数。 - Trapping Rain...
leetcode中国 我自己的leetcode刷题记录 ###[20150920] ...count and say , easy , 模拟 Anagrams 字符串处理,map Simplify Path,字符串处理,stack Length of Last Word,字符串处理.细节题 Rever
leetcode 答案LeetCode LeetCode in Swift 这个Repo 用来存下我在LeetCode ...Count and Say Easy #53 Maximum Subarray Easy #66 Plus One Easy #70 Climbing Stairs Easy #83 Remove Duplicates from Sorted L
Practice-Leetcode 这是一个Chinese School Girl:China:用来练习leetcode的文档.每道下面的题都有详细的解题思路,和知识点分析,尽请参考。 找实习的小伙伴也可以参考我的Tech-blog...038.Count and Say 递归 040.C