Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:为什么WA啊,谁给个超过15步的数据让我测试一下,谢谢In Reply To:为什么WA啊,谁给个超过15步的数据让我测试一下,谢谢 Posted by:1234554321 at 2005-03-17 20:48:07 > #include<iostream.h> > #include<string.h> > char*func(char*,int); > > int main() > { > char Num[16][81]; > int i,count=0; > > while(1) > { > cin>>Num[0]; > //cout<<Num[0]<<endl; > > if(Num[0][0]=='-') break; > i=0; > while(i<15) > { > count=0; > strcpy(Num[i+1],func(Num[i],strlen(Num[i]))); > if(strcmp(Num[i+1],Num[i])==0) > { > if(i==0) cout<<Num[0]<<" is self-inventorying "<<endl; > else cout<<Num[0]<<" is self-inventorying after "<<i<<" steps "<<endl; > //count=1; > break; > } > > if(strcmp(Num[i+1],Num[0])==0&&i>0) > { > cout<<Num[0]<<" enters an inventory loop of length "<<i+1<<endl; > //count=1; > break; > } > > for(int j=0;j<=i;j++) > { > if(strcmp(Num[i+1],Num[j])==0) > { > cout<<Num[0]<<" enters an inventory loop of length "<<i+1-j<<endl; > count=1; > break; > } > } > > > > if(count==1) break; > i++; > } > if(i>=15) cout<<Num[0]<<" can not be classified after 15 iterations "<<endl; > > } > return 0; > } > > > char* func(char*a,int l) > { > int b[11]={0,0,0,0,0,0,0,0,0,0}; > char c[21]; > int k=0; > for(int i=0;i<l;i++) > { > if(a[i]<='9'&&a[i]>='0') > b[int(a[i]-'0')]++; > } > > for(int j=0;j<10;j++) > { > if(b[j]!=0) > { > c[k]=b[j]+'0'; > c[k+1]=j+'0'; > k+=2; > } > } > c[k]='\0'; > return &c[0]; > } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator