题意:
m个小组,每个小组n支队伍进行比赛,任意两支队伍之间有一场比赛
一场比赛里赢得+2分输的+0分,打平的话每队+1分
先给出每支队伍的得分,判断这些得分是否满足小组比赛的条件
思路:
判断一些不可能的情况,比如两个0,得分大于全胜….剩下的就可以了
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int a[22222];
int main(){
int n,m;
while(scanf("%d",&n)!=EOF){
while(n--){
int at=0,bt=0;
scanf("%d",&m);
int all=0,f=0;
memset(a,0,sizeof(a));
for(int i=1;i<=m;i++){
scanf("%d",&a[i]);
all+=a[i];
if(a[i]==2*(m-1)){
at++;
}
if(a[i]==0){
bt++;
}
if(a[i]>(m-1)*2){
f=1;
}
}
if(f)
printf("F\n");
else if(all!=m*(m-1))
printf("F\n");
else if(at==2||bt==2)
printf("F\n");
else
printf("T\n");
}
}
return 0;
}