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,后来没办法改用暴力,还是WA,请高手指教。In Reply To:实在没辙了。我先是用排除法做,WA,后来没办法改用暴力,还是WA,请高手指教。 Posted by:tdzl2003 at 2005-07-26 08:08:06 直接枚举就可以过. > #include <iostream> > #include <string.h> > using namespace std; > > int Flag[12]; > int Up[8][8],Upl; > > int main() > { > char Buffer[8],Buffer1[10]; > int n,n1; > cin>>n; > for (n1=0;n1<n;n1++) > { > int i,j,k,l; > > for (i=0;i<12;i++) Flag[i]=0; > Upl=0; > for (i=0;i<3;i++) > { > for (j=0;j<8;j++) > { > cin>>Buffer[j]; > while (Buffer[j]<'A' || Buffer[j]>'L') > cin>>Buffer[j]; > } > for (j=0;j<2;j++) > { > cin>>Buffer1[j]; > while (Buffer1[j]<'a' || Buffer1[j]>'z') > cin>>Buffer1[j]; > } > Buffer1[2]=Buffer1[4]=0; > if (Buffer1[0]!='u') > for (j=0;j<2;j++) > { > cin>>Buffer1[j+2]; > while (Buffer1[j+2]<'a' || Buffer1[j+2]>'z') > cin>>Buffer1[j+2]; > } > if (!strcmp(Buffer1,"even")) > { > for (j=0;j<8;j++) > { > Flag[Buffer[j]-'A']=1; > } > } > else if(!strcmp(Buffer1,"up")) > { > for (j=0;j<8;j++)Up[Upl][j]=Buffer[j]-'A'; > Upl++; > } > else // if (!strcmp(Buffer1,"down")) > { > for (j=0;j<4;j++) > { > Up[Upl][j]=Buffer[j+4]-'A'; > Up[Upl][j+4]=Buffer[j]-'A'; > } > Upl++; > } > } > for (i=0;i<12;i++) > if (Flag[i]!=1) > { > l=1; > for (j=0;j<Upl;j++) > { > for (k=0;k<4;k++) > if (Up[j][k]==i) break; > if (k==4) l=0; > } > if (l) > { > cout<<(char)(i+'A')<<" is the counterfeit coin and it is heavy."<<endl; > } > l=1; > for (j=0;j<Upl;j++) > { > for (k=4;k<8;k++) > if (Up[j][k]==i) break; > if (k==8) l=0; > } > if (l) > { > cout<<(char)(i+'A')<<" is the counterfeit coin and it is light."<<endl; > } > } > } > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator