随笔分类 -  带权并查集

摘要:首先要注意核心代码int find(int i){ if(i == fa[i]) return fa[i]; int tt = find(fa[i]); num[i] = (num[i] + num[fa[i]]) % 3; fa[i] = tt; return fa[i];}不能写成int fin... 阅读全文
posted @ 2014-10-17 23:15 icodefive 阅读(198) 评论(0) 推荐(0)
摘要:题目大意:城市里有两个帮派,D a b 代表ab不是一个帮派的,A a b是问你这两个人事不是同一帮派的;考察并查集有两种算法;第一种算法:D a b 的时候将a 和b+n 放到一个并查集,a+n和b放到一个并查集里;我们就会得到如下的一个图;1 1+n2 2+n3 3... 阅读全文
posted @ 2014-07-20 18:41 icodefive 阅读(335) 评论(0) 推荐(0)