Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 968 Accepted Submission(s): 507
#include <iostream> #include<bits/stdc++.h> using namespace std; bool a[3002][3002]; int t,n; bool work() { for(int i=1;i<=n;i++) { for(int j=i+1;j<=n;j++) if(a[i][j]==1) { for(int k=j+1;k<=n;k++) if (a[j][k]==1 && a[k][i]==1) return 0; } else { for(int k=j+1;k<=n;k++) if(a[j][k]==0 && a[k][i]==0) return 0; } } return 1; } int main() { scanf("%d",&t); while(t--) { scanf("%d",&n); for(int i=1;i<=n;i++) { for(int j=1;j<=n-i;j++) { int x; scanf("%d",&x); a[i][i+j]=x; a[i+j][i]=x; } } if (n>5) {printf("Bad Team!\n"); continue;} if(work()) printf("Great Team!\n"); else printf("Bad Team!\n"); } return 0; }
原文:http://www.cnblogs.com/stepping/p/7401080.html