有一个整形数组buff[N],buff[N+1]描述buff[N],其中buff[0]=1;
buff[1]用来描述buff[0],buff[1]=11,从左往右表示buff[0]中有1个1;
buff[2]用来描述buff[1] ,buff[2]=21,从左往右表示buff[1]中有2个1
buff[3]用来描述buff[2] , buff[3]=1211,从左往右表示buff[2]中有1个2,1个1;
buff[4]用来描述buff[3] ,buff[4]=111221,从左往右表示buff[3]中有1个1,1个2,2个1;
输入N,0<=N<=25;
输入:
1
输出:
11
从左往右表示buff[0]中有1个1;
输入:
2
输出:
21
从左往右表示buff[1]中有2个1
输入:
3
输出:
1211
从左往右表示buff[3]中有1个2,1个1
输入:
4
输出:
111221
从左往右表示buff[3]中有1个1,1个2,2个1;
#include
int main()
{
int buff[1024]={1};//buff[0]=1
int len=1;
int new_buff[1024]={0};
int new_len=0;
int cnt=0;
int i=0;
while(scanf("%d",&cnt)!=EOF)//请求输入N
{
buff[0]=1;//起始值buff[0]=1
len=1;
if(cnt==0)//N=0时,输出则为1
{
len=1;
buff[0]=1;
}
else
{
int j,k;
int sum=1;
new_len=0;
for(i=0;i0)
{
for(j=0;j;j++)>;i++)>
全部0条评论
快来发表一下你的评论吧 !