LeetCode——Count and Say

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。

原题链接:https://oj.leetcode.com/problems/count-and-say/

能够看出,后一个数字是前个数字的读法,21读作1个2,先写下12,1个1,再写下11,连起来1211.

	public static String countAndSay(int n) {
if(n <= 0)
return null;
String str = "1";
int count = 1;
for(int i=0;i<n-1;i++){
StringBuilder builder = new StringBuilder();
for(int j=0;j<str.length();j++){
if(j<str.length()-1 && str.charAt(j)==str.charAt(j+1))
count++;
else{
builder.append(count + "" + str.charAt(j));
count = 1;
}
}
str = builder.toString();
}
return str;
}
上一篇:旺财速啃H5框架之Bootstrap(三)


下一篇:C#关闭word进程