题意:问的是对于每对(a,b)是否多有(b,a)配对,我们可以这样想对于(a,b)我们标记它+1,而(b,a)标记-1,最后如果都匹配的话,那么所有的可能都是0,
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int MAXN = 5005;
int ans[MAXN][MAXN];
int main()
{
int cas;
int a,b,flag;
while (scanf("%d",&cas) != EOF && cas )
{
memset(ans,0,sizeof(ans));
for (int i = 1; i <= cas; i++)
{
cin>>a>>b;
ans[a][b]++;
ans[b][a]--;
}
for (int i = 0; i < MAXN; i++)
{
flag = 0;
for (int j = 0; j < MAXN; j++)
if (ans[i][j])
flag = 1;
if (flag)
break;
}
if (!flag)
printf("YES\n");
else printf("NO\n");
}
return 0;
}