杭电 2120 并查集 判断环的个数
来源:互联网 发布:全国高校校花知乎 编辑:程序博客网 时间:2024/06/07 09:22
题意:富裕的女王 要给ACMER分地,女王的土地中有很多瞭望塔,女王命令下人在瞭望塔(watchtower) 与瞭望塔之间建立笔直的围墙,被围墙圈起来的土地可以用来奖励ACMER,但是女王智商捉急,不知道最多能奖励多少ACMER,请你来帮忙。
通过并查集的Union操作就可以实现瞭望塔之间的联通,如果两个瞭望塔所在根节点相同,说明有环。
思路:手动画图发现如果1 2 3的根节点都为0 合并1 2 2 3 1 3 题目说了不会交叉,就是不会出现3在1 2的直线上,所以此时三个环
#include"stdio.h" int set[1001]; int find(int x) { if(set[x]==x)return x; set[x]=find(set[x]); return set[x]; } int main() { int i; int ans; int a,b; int x,y; int n,m; while(scanf("%d%d",&n,&m)!=-1) { for(i=0;i<n;i++) set[i]=i; ans=0; for(i=0;i<m;i++) { scanf("%d%d",&x,&y); a=find(x); b=find(y); if(a==b) ans++; else set[b]=a; } printf("%d\n",ans); } return 0; }
0 0
- 杭电 2120 并查集 判断环的个数
- 杭电 1272 并查集判断环
- 杭电1272(并查集)判断环
- HDU 2120--Ice_cream's world I【并查集, 判断环的个数】
- HDU 2120--Ice_cream's world I【并查集, 判断环的个数】
- 杭电1272~~小希的迷宫——并查集判断是否存在环
- 杭电 1325 判断树 并查集
- 并查集判断连通块个数
- hdoj2120 Ice_cream's word I(并查集,判断环的个数)
- 杭电 2818 并查集的应用
- 杭电--1272--小希的迷宫--并查集
- 杭电 小希的迷宫 (并查集)
- 杭电1829 并查集的应用
- 杭电 小希的迷宫 并查集
- 杭电 1232 并查集
- 杭电1232//并查集入门
- 杭电ACM1272(并查集)
- 杭电ACM1325(并查集)
- Linux命令基础9-mv命令
- 6.dig
- 菜鸟笔记-1
- MySQL常用命令
- mongodb的一些简单操作
- 杭电 2120 并查集 判断环的个数
- 关于tcp 创建用来listen的socket时使用的地址
- JS的使用方式-行内js
- D-04
- (个人)AR电子书系统创新实训第一周(1)
- 10个非常有用的Javascript技巧。必看!
- Linux学习基础篇(一)
- 十年程序员的感悟
- 笔记:grunt的构建以及js文件的合成&压缩