runxinzhi.com
首页
百度搜索
HDU1272 小希的迷宫 并查集
/*并查集的应用,注意点的个数为0的时候,注意输入*/ #include <iostream> #include "UFS.h" using namespace std; UFS ufs; bool flag[MAXN]={0}, f; int cnt_e, cnt_v; void init(); int main() { int n,m; init(); while(cin>>n>>m) { if(m==-1&&n==-1)return 0; if(m==0&&n==0) { getchar();getchar(); /*条件:1.ufs不冲突2.v=e+1(v=0时例外)*/ if(f) cout<<"No"<<endl; else if(cnt_v==0)cout<<"Yes"<<endl; else if(cnt_v!=cnt_e+1)cout<<"No"<<endl; else cout<<"Yes"<<endl; init(); } else { if(flag[m] == 0) { flag[m] = 1; cnt_v++; } if(flag[n] == 0) { flag[n] = 1; cnt_v++; } m = ufs.Find(m); n = ufs.Find(n); if(m==n) f=1; else { ufs.Union(m, n); cnt_e++; } } } return 0; } void init() { ufs.clear(); memset(flag, 0, sizeof(flag)); f = 0; cnt_v = 0; cnt_e = 0; }
相关阅读:
进程总结
三大流程
canvas简介
时钟
vim
马拉车
模拟退火
洛谷P2055假期的宿舍
洛谷P2320鬼谷子的钱袋.
洛谷P2278操作系统
原文地址:https://www.cnblogs.com/windmissing/p/2559866.html
最新文章
POJ
Mail.Ru Cup 2018 Round 3
Luogu4726 【模板】多项式指数函数(NTT+多项式求逆)
Luogu4725 【模板】多项式对数函数(NTT+多项式求逆)
Luogu5205 【模板】多项式开根(NTT+多项式求逆)
#195 game(动态规划+二分)
#194 sequence(搜索+动态规划+主席树)
#191 sea(动态规划)
#189 stat(动态规划)
#186 path(容斥原理+状压dp+NTT)
热门文章
Mail.Ru Cup 2018 Round 2
权重比较(id class 标签)
datetime模块的简单用法,以及给出日期知道这周的其他日期,换成毫秒
python补充3
进程 ---线程 --协程的混合
协程---- greenlet模块 ----- gevent模块
concurrent.futures模块 -----进程池 ---线程池 ---回调
getpass模块 ---- optparse
进程和线程的区别
线程 ----- 守护线程 ----死锁 ----递归锁 ---线程队列
Copyright © 2020-2023
润新知