UVa 793 - Network Connections
来源:互联网 发布:用友软件好学吗 编辑:程序博客网 时间:2024/04/19 23:08
题目:给出网络中的边,查询节点的连接状态。
分析:简单题、并查集。
注意:数据读入出错会RE。
#include <iostream>#include <stdlib.h>#include <cstring>#include <stdio.h>#include <stack> using namespace std;char E[ 3 ];//union_set__beginint sets[ 10005 ];int rank[ 10005 ];void union_set( int s, int t ) {for ( int i = s ; i <= t ; ++ i ) {sets[i] = i;rank[i] = 0;}}void Union( int a, int b ) {if ( rank[a] > rank[b] )sets[b] = a;else {sets[a] = b;if ( rank[a] == rank[b] )rank[b] ++;}}int Find( int a ) {if ( a != sets[a] )sets[a] = Find( sets[a] );return sets[a];}//union_set__endint main(){int n,m,a,b,A,B;while ( scanf("%d\n",&n) != EOF ) {while ( n -- ) {int v1 = 0,v2 = 0;scanf("%d\n",&m);union_set( 1, m );while ( E[0] = getchar() ) {if ( E[0] == '\n' || E[0] == EOF ) break;scanf("%d%d",&a,&b);getchar();A = Find(a);B = Find(b);if ( E[0] == 'c' ) {if ( A != B )Union( A, B );}else {if ( A != B ) ++ v2;else ++ v1;}}printf("%d,%d\n",v1,v2);if ( n ) printf("\n");}}return 0;}
- UVa 793 - Network Connections
- Uva 793 Network Connections
- Network Connections UVA 793(并查集)
- Network UVA
- (是用树结构来支持并查集的操作8.4.5)UVA 793 Network Connections(输入输出处理的的经典题&&并查集操作之记录查询中yes和no出现的次数)
- UVA 10369 Arctic Network
- UVA 10369 - Arctic Network
- UVa 10369 - Arctic Network
- UVa 10369 - Arctic Network
- uva 1267 Network
- Uva-Live Archive3902-Network
- uva 1267 Network
- Uva 10369 - Arctic Network
- UVa 315 Network ( 求割顶)
- UVa 10369 - Arctic Network
- uva 1329 Corporative Network
- UVa:10369 Arctic Network
- Network UVa, 315
- 大型网页架构思路
- 各种软件之我见
- 我在阿里云的日子里,初测登陆和性能测试
- 推荐一款js写的遮罩数据加载插件showLoading
- log4j日志输出性能优化-缓存、异步
- UVa 793 - Network Connections
- Cocoa之Core Data(1)框架详解
- 问答 ——如何加强 iOS 里的列表滚动时的顺畅感?
- 两台Mysql数据库数据同步实现
- void与void*详解
- oracle中常用表和视图
- merge into 用法小结
- php出现Cannot modify header information问题的解决方法大全
- Tomcat4 单实例的Bug