首页 > 代码库 > UVa10608
UVa10608
FRIENDS
题意:找出最大的朋友圈
#include <stdio.h>#define N 30005int fa[N], ans[N];int find(int x){ return fa[x] == x ? x : fa[x] = find(fa[x]);}int main(int argc, char *argv[]){ int t, n, m, i, v1, v2, x, y, max; scanf("%d", &t); while(t--) { scanf("%d%d", &n, &m); for(i = 1; i <= n; i++) { fa[i] = i; ans[i] = 0; } for(i = 1; i <= m; i++) { scanf("%d%d", &v1, &v2); x = find(v1); y = find(v2); if(x != y) fa[x] = y; } for(i = 1; i <= n; i++) ans[find(i)]++; max = 0; for(i = 1; i <= n; i++) if(max < ans[i]) max = ans[i]; printf("%d\n", max); } return 0;}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。