hdoj 1232 畅通工程
摘要:
裸的并查集,把每个集合看成一个点,然后点的总和减1就是道路条数,比如两个点之间连通最少需要1条路; 1 #include <stdio.h> 2 3 int set[1001]; 4 5 int find(int n)//寻找祖先,类似双亲树 6 { 7 while (set[n] != n)//o(logN) 8 n = set[n]; 9 return n;10 }11 12 void merge(int a, int b)//合并集合13 {14 b = find(b);15 set[b] = a;//用a的值覆盖b祖先的值,a的祖先就... 阅读全文
posted @ 2012-08-09 19:30 Xor<>OR 阅读(125) 评论(0) 推荐(0)
浙公网安备 33010602011771号