问题
题目:[hdu-1272]
思路
无向图,联通,没有环,只能说明它是生成树。特点:n个节点,n-1条边。注意,最小生成树是权值最小的生成树,仅此而已。它也是生成树。
代码
#include <cstdio>
#include <set>
//#define LOCAL
using std::set;
int main( void ){
#ifdef LOCAL
freopen( "../data/input.dat", "r", stdin );
#endif
int a, b;
while( scanf( "%d%d", &a, &b ) ){
if( -1==a && -1==b )
break;
if(!a&&!b){
printf( "Yes\n" );
continue;
}
set<int> nodes;
int edge_num = 1;
nodes.insert(a);
nodes.insert(b);
while( scanf("%d%d", &a, &b) ){
if(!a&&!b)
break;
nodes.insert(a);
nodes.insert(b);
++edge_num;
}
if( nodes.size() == edge_num + 1 )
printf( "Yes\n" );
else
printf( "No\n" );
}
return 0;
}