题目
分析
数字爆炸型的题千万别用整数来存,最好还是用字符串来存。
题目比较简单,循环n-1次,每次循环记录相同字符的个数再拼凑到一块即可。
题解
string countAndSay(int n) {
string begin="1";
int m=n-1;
while(m--){
string value="";
int count=1;
char temp=begin[0];
for(int i=1;i<begin.size();i++){
if(begin[i]==temp){
count++;
}
else{
value+=(count+'0');
value+=temp;
count=1;
temp=begin[i];
}
}
value+=(count+'0');
value+=temp;
begin=value;
if (m==0) {
return value;
}
}
return "1";
}
一遍就AC的,结构我也觉得混乱....