还是属于并查集的变形

两个点仅仅有一条路径连通

给出的两个点事先都是属于两个集合的

须要给出的着条边构成一个集合

算法复杂度还是挺高的

每一个我都循环了100000次

set2数组没清空 wrong了一次

#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
int sett[100000 + 100];
int set2[100000 + 100];
int find2(int x)
{
while(x!=sett[x]) x=sett[x];
return x;
}
int merge2(int fx,int fy)
{
if(fx == fy) return 1;
else if(fx > fy) sett[fx]=fy;
else sett[fy] = fx;
return 0;
}
int main()
{
for(int i=1;i<=100000;i++) sett[i]=i;
int x,y;
int flag=1;
while(scanf("%d%d",&x,&y)&&x!=-1&&y!=-1)
{
if(x==0&&y==0){
int countt=0;
for(int i=1;i<=100000;i++) if(sett[i]==i&&set2[i]) countt++;
if(countt >= 2) flag=0;
// printf("countt %d\n",countt);
if(flag) printf("Yes\n");
else printf("No\n");
flag = 1;
for(int i=1;i<=100000;i++) sett[i]=i;
memset(set2,0,sizeof(set2));
}
else {
set2[x]=1,set2[y]=1;
int fx = find2(x);
int fy = find2(y);
if( merge2(fx,fy) ) { flag=0; }
}
}
return 0;
}

并查集图冲突hdu1272的更多相关文章

  1. POJ - 1733 Parity game 种类并查集+离散化

    思路:d(i, j)表示区间(i, j]的1的个数的奇偶性.输入最多共有5000*2个点,需要离散化处理一下.剩下的就是并查集判冲突. AC代码 #include <cstdio> #in ...

  2. hdu1272并查集入门

    小希的迷宫 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  3. 图的生成树(森林)(克鲁斯卡尔Kruskal算法和普里姆Prim算法)、以及并查集的使用

    图的连通性问题:无向图的连通分量和生成树,所有顶点均由边连接在一起,但不存在回路的图. 设图 G=(V, E) 是个连通图,当从图任一顶点出发遍历图G 时,将边集 E(G) 分成两个集合 T(G) 和 ...

  4. hdu-1272 并查集

    Problem Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走.但是她设计迷宫的思路不一样,首先她认为所有的通道都应该 ...

  5. 稀疏图(邻接链表),并查集,最短路径(Dijkstra,spfa),最小生成树(kruskal,prim)

    全部函数通过杭电 1142,1162,1198,1213等题目测试. #include<iostream> #include<vector> #include<queue ...

  6. 稠密图(邻接矩阵),并查集,最短路径(Dijkstra,spfa),最小生成树(kruskal,prim)

    全部函数通过杭电 1142,1162,1198,1213等题目测试. #include<iostream> #include<vector> #include<queue ...

  7. PAT甲题题解-1126. Eulerian Path (25)-欧拉回路+并查集判断图的连通性

    题目已经告诉如何判断欧拉回路了,剩下的有一点要注意,可能图本身并不连通. 所以这里用并查集来判断图的联通性. #include <iostream> #include <cstdio ...

  8. 小希的迷宫(hdu1272 并查集)

    http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=259#problem/D Description 上次Gardon的迷宫城堡小希 ...

  9. HDU 4750 Count The Pairs ★(图+并查集+树状数组)

    题意 给定一个无向图(N<=10000, E<=500000),定义f[s,t]表示从s到t经过的每条路径中最长的边的最小值.Q个询问,每个询问一个t,问有多少对(s, t)使得f[s, ...

随机推荐

  1. java.util.concurrent常用类(CountDownLatch,Semaphore,CyclicBarrier,Future)

    CyclicBarrier CyclicBarrier是用来一个关卡来阻挡住所有线程,等所有线程全部执行到关卡处时,再统一执行下一步操作.假设一个场景:每个线程代表一个跑步运动员,当运动员都准备好后, ...

  2. [Luogu 2216] [HAOI2007]理想的正方形

    [Luogu 2216] [HAOI2007]理想的正方形 题目描述 有一个a*b的整数组成的矩阵,现请你从中找出一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小. 输入输出格式 输 ...

  3. layer的基本使用

    layer是layui独立出来的一个弹出层模块 <!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

  4. java ---书写自己的名字

    public class hello { public static void main(String[] args) { // TODO 自动生成的方法存根 System.out.println(& ...

  5. 元信息标记---meta

    位于<head></head>之间 1.设置页面关键字: <meta name="keywords" content="输入具体关键字&qu ...

  6. 【MySQL】源码安装

    操作系统:Red Hat Enterprise Linux Server release 6.5 Mysql安装包:mysql-5.6.4-m7.tar.zip,下载地址:http://pan.bai ...

  7. 安卓代码迁移:Make.exe: *** [***.o]Error 1

    描述:NDK开发中显示,windows环境下NDK开发 解决办法:查找系统环境变量,找到关于Cygwin的环境变量或其他无效的环境变量删除处理.

  8. css3基础篇一

    CSS3 选择器 选择器 例子 例子描述 CSS .class .intro 选择 class="intro" 的所有元素. 1 #id #firstname 选择 id=&quo ...

  9. 与swift协议相关的技术

    一.协议定义与实现: 1.关联类型: 2.协议组合: 3.协议扩展: 4.协议实现. 二.协议使用:

  10. snv报错

    ERROR svn: E160028: Commit failed svn出现上面错误,先更新再提交即可解决.