HDU-1829 A Bug's Life (带权并查集)
来源:互联网 发布:淘宝平铺拍摄价格 编辑:程序博客网 时间:2024/06/05 16:40
终于自己做出来第一个带权并查集了!!!
虽然这题和真正的难题有一定差距,毕竟第一次尝试嘛,还算顺利。
这题就是给出的两个数,不是同一个性别,比如给出1 3,1和3就不是同一种性别,如果有说明和上面的情况矛盾,就输出Suspicious bugs found!,如果所有情况都没有矛盾的话,输出No suspicious bugs found!。
0表示同类,1表示不同类。
#include<iostream>#include<cstdio>#include<cctype>#include<cstdlib>#include<cmath>#include<algorithm>#include<cstring>#include<string>#include<vector>#include<queue>#include<map>#include<set>#include<sstream>#include<stack>using namespace std;#define MAX 2000+5typedef long long LL;const double pi=3.141592653589793;const int INF=1e9;const double inf=1e20;const double eps=1e-10;const int mod=1000000007;int fa[MAX];int tmp[MAX];int Find(int x){if(fa[x]==x) return fa[x];int tem=fa[x];fa[x]=Find(fa[x]);tmp[x]=(tmp[x]+tmp[tem])%2;return fa[x];}void Union(int a,int b,int c,int d){fa[c]=d;tmp[c]=(tmp[a]+tmp[b]+1)%2;}int main(){int t,kase=0;cin>>t;while(t--){kase++;int n,m;int flag=0;scanf("%d%d",&n,&m);for(int i=1;i<=n;i++){fa[i]=i;tmp[i]=0;}for(int i=0;i<m;i++){int a,b;scanf("%d%d",&a,&b);if(!flag){int c=Find(a);int d=Find(b);if(c!=d) Union(a,b,c,d);else{if(tmp[a]==tmp[b]){printf("Scenario #%d:\nSuspicious bugs found!\n",kase);flag=1;}}}else continue;}if(!flag) printf("Scenario #%d:\nNo suspicious bugs found!\n",kase);printf("\n");}return 0;}
0 0
- HDU 1829 A Bug‘s Life 带权并查集&&带偏移量的写法
- HDU-1829 A Bug's Life (带权并查集)
- hdu 1829 A Bug's Life(带权并查集)
- POJ 2492/hdu 1829 A Bug's Life【带权并查集】
- HDU 1829 A Bug's Life 带权并查集
- HDU 1829 A Bug's Life(带权并查集)
- HDU 1829 A Bug's Life 经典带权并查集
- A Bug's Life(带权并查集)
- A bug's life(带权并查集)
- HDU 1829 A Bug's Life(带关系的并查集)
- 并查集Hdu 1829 A Bug's Life
- HDU 1829 A Bug's Life 并查集
- hdu 1829 A Bug's Life(并查集)
- HDU 1829 A Bug's Life(并查集)
- HDU 1829 A Bug's Life(种类并查集)
- hdu 1829 A Bug's Life (基础并查集)
- HDU 1829 A Bug's Life 并查集
- hdu 1829 A Bug's Life 并查集
- 123
- nginx上万能的wordpress伪静态配置方案
- 黑马程序员-Java学习笔记之API(其他类)
- Eclipse出现The currently displayed page contains invalid values
- uva - 1471(动态维护序列二元组)
- HDU-1829 A Bug's Life (带权并查集)
- 二叉树遍历
- listview的第三方库
- CocoaPods中的头文件import导入时不能自动补齐的解决方法
- Android使用XUtil框架笔记 库文件打包
- HTML5技术初探
- java单例模式(懒汉式和饿汉式)
- 强烈推荐visual c++ 2012入门经典适合初学者入门
- 博客收藏