题意:给出n个人(编号为1~n)以及每个人的若干个爱好,把有一个或多个共同爱好的人归为一个集合,问共有多少个集合,每个集合里有多少个人? 思路:典型的并查集题目.并查集的模板init()函数,union()函数,findSet()函数就不多讲了.这里根据爱好来归类,因此,在读入数据时把爱好进行合并.设置数组hobby[],hobby[id]表示编号为id的这个人的一个爱好,如果某个人有多个爱好,只要记录一个就好了:设置数组num[],num[fa]表示以fa为根结点的爱好集合的人数,初始化为0.…