题意,给你几个小组,每个小组有n个队,然后小组内打循环赛,单场比赛赢了的得2分,打平个得1分,打输得0分,最后给你每组内,每个队的得分,问你这个得分情况是不是可能的。图,度,然后就差不多出来了。
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <set>
#include <cstdio>
#include <string>
#include <vector>
#include <map>
#include <cmath>
#include <algorithm>
using namespace std;
typedef long long LL;
int T;
int n;
LL in;
LL out;
int tmp;
int main()
{
while(scanf("%d", &T) != EOF)
{
for(int cas = 0; cas < T; cas++)
{
bool flag = true;
scanf("%d", &n);
in = out = 0;
for(int i = 0; i < n; i++)
{
scanf("%d", &tmp);
if(tmp < 0 || tmp > 2*(n - 1))
flag = false;
in += tmp;
out += (2*(n - 1) - tmp);
}
if(in == out && flag) printf("T\n");
else printf("F\n");
}
}
return 0;
}