Look-and-saysequenceisasequenceofintegersasthefollowing:
D,D1,D111,D113,D11231,D112213111,...SampleInput:18SampleOutput:1123123111
我的代码:
#include<iostream>#include<string>#include<sstream>#include<vector>#include<algorithm>#include<cmath>#include<map>#include<queue>#include<unordered_map>usingnamespacestd;//15:21intmain(){freopen("C:\\Users\\chenzhuo\\Desktop\\in.txt","r",stdin);stringtmp="";charc;cin>>c;tmp=tmp+c;intn;cin>>n;for(inti=1;i<n;i++){//cout<<1;stringtmp1="";charlast=tmp[0];//cout<<last;intsz=0;for(intj=0;j<tmp.size();j++){if(tmp[j]==last){sz++;}else{tmp1+=last;last=tmp[j];charcc='0';cc+=sz;tmp1=tmp1+cc;sz=1;}}tmp1+=last;charcc='0';cc+=sz;tmp1=tmp1+cc;tmp=tmp1;cout<<tmp<<endl;}cout<<tmp;}
晴神代码优点:
循环不换行,显得紧密。
使用了函数to_string
两个for循环一次遍历。
#include<iostream>usingnamespacestd;intmain(){ strings; intn,j; cin>>s>>n; for(intcnt=1;cnt<n;cnt++){ stringt; for(inti=0;i<s.length();i=j){ for(j=i;j<s.length()&&s[j]==s[i];j++); t+=to_string((s[i]-'0')*10+j-i); } s=t; } cout<<s; return0;}