|
判断u->v 和 v -> u是否成对出现。
#include<stdio.h>
#include<string.h>
#define MAXD 1005
int G[MAXD][MAXD];
int N, u, v;
bool check()
{
for( int i = 1; i <= 1000; i ++)
for( int j = 1; j <= 1000; j ++)
if( G[j] != 0) return false;
return true;
}
void init()
{
memset(G, 0, sizeof G);
for( int i = 0; i < N; i ++)
{
scanf( "%d%d", &u, &v);
G[v] ++;
G[v] --;
}
}
int main()
{
while( true)
{
scanf( "%d", &N);
if( N == 0) break;
init();
if( check() ) printf( "YES\n");
else printf( "NO\n");
}
return 0;
}
|
|
|