题目描述

现有个用户,编号问1-,现在已知有m对关系,每一对关系给你两个数x和y,代表编号为x的用户和编号为y的用户是在一个圈子中,例如:A和B在一个圈子中,B和C在一个圈子中,那么A,B,C就在一个圈子中。现在想知道最多的一个圈子内有多少个用户。

输入描述

第一行输入一个整数T,接下来有T组测试数据。对于每一组测试数据:第一行输入1个整数n,代表有n对关系。

接下来n行,每一行输入两个数x和y,代表编号为x和编号为y的用户在同一个圈子里。

1   n   

1   x,y

输出描述

对于每一组数据,输出一个答案代表一个圈子内的最多人数。

示例

输入

2
4
1 2
3 4
5 6
1 6
4
1 2
3 4
5 6
7 8

输出

4
2

分析

超有爱的并查集~: https://blog.csdn.net/niushuai666/article/details/6662911

并查集的使用和优化:https://www.cnblogs.com/MS903/p/11244273.html

参考代码

#include <iostream>
#include <cstdio>
#include <cmath>using namespace std;int const maxn=1e7+50;
int T,M,x,y;
int fa[maxn];
int cnt[maxn];void init()
{for(int i=1; i<=1e7; i++){fa[i]=i;cnt[i]=1;}
}int findf(int x)
{if(fa[x]!=x){return fa[x]=findf(fa[x]);}elsereturn x;
}int main()
{scanf("%d",&T);while(T--){init();scanf("%d",&M);int res=1;while(M--){scanf("%d%d",&x,&y);int m=findf(x);int n=findf(y);if(m!=n){fa[m]=n;cnt[n]+=cnt[m];res=max(res,cnt[n]);}}printf("%d\n",res);}return 0;
}

从一道腾讯笔试编程题看——并查集相关推荐

  1. 华为2020校招笔试编程题 看这篇就够了(上)

    背景 近日一位在华为的师兄整理了一份内部的提纲给我们,想着以后肯定不会去华为,于是乎分享给大家,看看菊花厂今年的笔试题目是什么样子的. 编程题范围 这好像来自一个华为内部的文档,据说今年华为内部也在进 ...

  2. Python——腾讯笔试编程题(函数练习)

    题目需求: 对于一个十进制的正整数, 定义f(n)为其各位数字的平方和,如: f(13) = 1的2次方 + 3的2次方 = 10 f(207) = 2的2次方+ 0的2次方+ 7的2次方= 53 下 ...

  3. 腾讯笔试编程题,贪吃的小Q(二分查找)

    问题描述 小Q的父母要出差N天,走之前给小Q留下了M块巧克力.小Q决定每天吃的巧克力数量不少于前一天吃的一半,但是他又不想在父母回来之前的某一天没有巧克力吃,请问他第一天最多能吃多少块巧克力. 输入描 ...

  4. 某知名IT公司最近的一道笔试编程题

    某知名IT公司最近的一道笔试编程题        因为笔试时答应对题目保密,故在此就不说出公司名了.欢迎交流,共同探讨. 一 问题描述     给定任一字符串(可以有中文),长度为任意,要求找出其出现 ...

  5. python算法预测风险等级_一般算法水平到底什么样子才能秒杀Bat的笔试编程题?...

    很简单,打开 LintCode 随便找一道中等难度的题,如果能很快找到思路并提交代码通过,那么BAT公司的笔试编程题基本没什么问题了.(唯一需要注意的是国内公司笔试题目一般都很长,比较考验阅读理解能力 ...

  6. 经典笔试编程题--Java实现

    转载自  经典笔试编程题--Java实现 1.输入一个正数n,输出所有和为n的连续正数序列.  分析:设定两个指针,min指向和为n的连续正数序列的最小值,max指向和为n的连续正数序列最大值.sum ...

  7. 【面经】外企德科-华为精英研发项目-笔试编程题

    微信搜索:编程笔记本.获取更多干货! 微信搜索:编程笔记本.获取更多干货! 点击上方蓝字关注我,我们一起学编程 欢迎小伙伴们分享.转载.私信.赞赏 今天来看一道"外企德科-华为精英研发项目& ...

  8. 网易笔试编程题java_2017年网易校招笔试JAVA研发编程题

    为什么80%的码农都做不了架构师?>>> 尝试挑战了下网易2017校招的笔试编程题,共三题,AC第一题,第二题思考了很久勉强用一种low逼的方式完成,第三题没有完成,希望路过的ACM ...

  9. 美团点评2017秋招笔试编程题

    美团点评2017秋招笔试编程题 1, 大富翁游戏,玩家根据骰子的点数决定走的步数,即骰子点数为1时可以走一步,点数为2时可以走两步,点数为n时可以走n步.求玩家走到第n步(n<=骰子最大点数且是 ...

最新文章

  1. SQL的四种连接-左外连接、右外连接、内连接、全连接
  2. CSS基础(part18)--溢出的文字省略号显示
  3. 如何使用CSS实现居中
  4. java 数据库操作教程_java操作数据库的基本方法
  5. zabbix api python使用
  6. linux中screen 命令简单使用
  7. java是如何调用native方法?hotspot源码分析必会技能
  8. 数据中心服务器巡检方案,数据中心巡检机器人方案.pdf
  9. instagram下载_Instagram Raider可让您轻松下载Instagram图像和视频
  10. 【STM32F429的DSP教程】第1章 初学数字信号处理准备工作
  11. 河南省第二届“金盾信安杯”网络安全大赛 WriteUp Crypto+Misc
  12. 用C++计算圆周长和面积
  13. Apache POI(Word)教程_编程入门自学教程_菜鸟教程-免费教程分享
  14. 双臂魔方机器人的学习
  15. 三国志战略版:萌新手册系列_总结
  16. 招商银行信用卡中心笔试
  17. Zuul网关拦截器配置
  18. 如何配置和测试ChatBot
  19. linux服务器监控工具
  20. 五个Google Play应用程序的有效ASO优化策略

热门文章

  1. python3: format函数
  2. XDown 2.0.2.3中文版:小编自用款mac下载工具
  3. Python递归和迭代器的练习
  4. mtk驱动camera的调试总结1--原理
  5. 关于封装echarts的那些事
  6. 深入理解统一诊断服务(UDS)ISO14229-1
  7. 购买N82,如何防止翻新机
  8. 不二研究:半年亏损近20亿,“土味”小鹏不仅造车还造“马”!
  9. QT控件系列一 | 半透明遮罩弹窗
  10. AI智能语音客服机器人功能介绍