并查集——《畅通工程》
来源:互联网 发布:mac黑苹果安装教程 编辑:程序博客网 时间:2024/06/09 16:56
//题目来自于HDU1232
注意:两个城市之间可以有多条道路相通,也就是说
3 3
1 2
1 2
2 1
这种输入也是合法的
当N为0时,输入结束,该用例不被处理。
4 21 34 33 31 21 32 35 21 23 5999 00
102998
代码:
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int f[1000];
int hash[1000];
int fine(int n)
{
if(f[n]==n)return n;
else
{
f[n]=fine(f[n]);
return f[n];
}
}
int main()
{
int n,m,t;
int j,k,i;
while(cin>>n)
{
if(n==0)break;
cin>>m;
for(j=0; j<1000; j++)
f[j]=j;
t=0;
memset(hash,0,sizeof(hash));
if(m==0)
cout<<n-1<<endl;
else
{
for(j=0; j<m; j++)
{
cin>>k>>i;
f[fine(k)]=fine(i);
}
for(j=1; j<=n; j++)
{
if(hash[fine(j)]==0)
{
hash[fine(j)]=1;
t++;
}
}
cout<<t-1<<endl;
}
}
}
- 并查集——畅通工程
- 并查集——《畅通工程》
- 并查集 —— 畅通工程
- 并查集——畅通工程
- 【并查集入门】HDU1232——畅通工程
- ACM-并查集之畅通工程——hdu1232
- HDU 1232 ——畅通工程(并查集)
- HDU1232——畅通工程(并查集)
- hdu1232——畅通工程(并查集)
- 畅通工程——kruskal+并查集
- 畅通工程——并查集(转)
- HDU—1232 畅通工程 (并查集)
- 并查集 畅通工程
- 畅通工程(并查集)
- 畅通工程 并查集
- 畅通工程 并查集
- 畅通工程 ---- 并查集
- 畅通工程(并查集)
- linux命令1——最常用命令
- 父子进程的并发性
- 备份设置
- LeetCode | Reverse Linked List II(翻转链表2)
- 【索引】 Permutation
- 并查集——《畅通工程》
- eclipse安装Memory Analyzer
- linux命令2——不常用命令
- 【Wikioi】1116四色问题
- 单例模式应用场景:
- Activiti5 工作流的Helloworld的感悟(比较详细)
- 动态删除列表
- Python 正则表达式查询相似的字符串
- struts2的执行原理