Solution
public class Solution {
public String countAndSay(int n) {
if (n < 1) {
throw new IllegalArgumentException("Illegal argument for function countAndSay.");
}
String s = "1";
while (--n > 0) {
StringBuilder tmp = new StringBuilder();
int i = 0, j = 0;
while (j < s.length()) {
if (s.charAt(j) != s.charAt(i)) {
tmp.append(j - i);
tmp.append(s.charAt(i));
i = j;
}
j++;
}
tmp.append(j - i);
tmp.append(s.charAt(i));
s = tmp.toString();
}
return s;
}
}
Problem#1
* String未初始化
* 注意不同类型之间不能随便转换
* char如何转成int
* 什么时候应当将String转换成charArray()