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 |
这个应该能过In Reply To:谁能看看到底哪里错了呀?为什么总是WA? Posted by:williamzl at 2005-07-25 21:00:12 #include<iostream> #include<string> using namespace std; char card[1000][20]; bool judge (int i,int j,int k) { int p; for(p=0;p<4;p++) if(!( card[i][p]==card[j][p]&&card[i][p]==card[k][p]&&card[j][p]==card[k][p]|| card[i][p]!=card[j][p]&&card[i][p]!=card[k][p]&&card[j][p]!=card[k][p] )) return false; return true; } int main(int) { int n; do{ n=0; cin.getline(card[n++],100); if(!cin)break; while(strlen(card[n-1])==4) cin.getline(card[n++],100); n--; int i,j,k,num; num=0; cout<<"CARDS: "; for(i=0;i<n;i++) cout<<' '<<card[i]; cout<<endl; cout<<"SETS: "; for(i=0;i<n;i++) for(j=i+1;j<n;j++) for(k=j+1;k<n;k++) { if(judge(i,j,k)) { num++; if (num>1) cout<<" "; cout<<num<<". "<<card[i]<<' '<<card[j]<<' '<<card[k]<<endl; } } if(num==0) {cout<<"*** None Found ***"<<endl; } cout<<endl; }while(cin); return 0;} > if (strlen(line)!=0) > { > sscanf(line,"%c%c%c%c",&a[i][0],&a[i][1],&a[i][2],&a[i][3]); > i=i+1; > } > if (s==NULL || line[0]==0) > { > printf ("\nCARDS: "); > for (j=0;j<i;j++) > { > for (k=0;k<4;k++) > printf("%c",a[j][k]); > printf (" "); > } > printf ("\nSETS: "); > > for (j=0;j<i;j++) > for (k=j+1;k<i;k++) > for (f=k+1;f<i;f++) > { > if ((a[j][0]!=a[k][0]&&a[j][0]!=a[f][0]&&a[k][0]!=a[f][0])||(a[j][0]==a[k][0]&&a[j][0]==a[f][0]&&a[k][0]==a[f][0])) flag=flag+1; > if ((a[j][1]!=a[k][1]&&a[j][1]!=a[f][1]&&a[k][1]!=a[f][1])||(a[j][1]==a[k][1]&&a[j][1]==a[f][1]&&a[k][1]==a[f][1])) flag=flag+1; > if ((a[j][2]!=a[k][2]&&a[j][2]!=a[f][2]&&a[k][2]!=a[f][2])||(a[j][2]==a[k][2]&&a[j][2]==a[f][2]&&a[k][2]==a[f][2])) flag=flag+1; > if ((a[j][3]!=a[k][3]&&a[j][3]!=a[f][3]&&a[k][3]!=a[f][3])||(a[j][3]==a[k][3]&&a[j][3]==a[f][3]&&a[k][3]==a[f][3])) flag=flag+1; > if (flag==4) > { > count++; > if (count==1)printf ("%d. ",count);else printf (" %d. ",count); > for (t=0;t<4;t++) > printf("%c",a[j][t]); > printf (" "); > for (t=0;t<4;t++) > printf("%c",a[k][t]); > printf (" "); > for (t=0;t<4;t++) > printf("%c",a[f][t]); > printf ("\n"); > } > > flag=0; > } > if (count!=0) printf ("\n"); > if (count==0) printf ("*** None Found ***\n\n"); > count=0; > i=0; > flag=0; > } > if (s==NULL) break; > > } > > > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator