首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
poj1703专题
POJ1703带权并查集
D: u v u与v在不同的集合 A: u v 查询u与v的关系 1)压缩路径过程 fu->root 0 1 u-fu 0 0 1 1 1 0 2)合并过程 fu->fv u->fu 0 1 v->fv 0 1 0 1 0
阅读更多...
poj1703 Find them,Catch them 【并查集】
做过一些的带权并查集,再来做所谓的“种类并查集",发现好像就顿悟了。 种类并查集与带权并查集实质上的差别并不大, 关键的区别就是种类并查集只是带权并查集再弄个%取余操作而已,然后余数就表示他属于哪个种类。 这题只有两个种类,也就是只有0和1两种, 对于两个不同的种类,那么之间的权值是相差1的,所以按照带权并查集的方法做加上1,然后取余2即可。 #include<cstdio>const int
阅读更多...
poj1703 种类并查集
种类并查集,比poj1182水 #include <iostream>#include <cstring>using namespace std;const int N=100005;int father[N];int rank[N];int n,m;void init(){memset(rank,0,sizeof(rank));for (int i=0;i<=100000;i++
阅读更多...
POJ1703 两种方法
找规律算出子节点与父节点,子节点与爷爷节点的关系来建图。 /*DAccepted916 KB329 msC++1120 B2013-04-08 18:29:33*/#include<cstdio>const int maxn = 100000+10;int p[maxn]; //存父亲节点int r[maxn]; //存与根节点的关系,0 代表同类, 1代表不同类int fi
阅读更多...