题目
分析
这还是一个并查集的题目。分析样本数据可以发现,并不是找GCD。样本中开始p=3,在[10, 20]这个区间中,12/15/18都可以被3整除,归并;下一个p=5,此时10/15/20也可以归并——注意这是要归并到同一个集合中去,而不是另开一个集合。
有了这个基本思路后,就可以结合筛法先找到[a, b]之间的所有大于等于p的质数;遍历[a, b]间所有这些数,凡是是p的倍数的都进行归并。而无法归并的自然就独自成组了。
答案

思考
注意:这里的区间是[a, b],而parent数组常规是0基的,所以在归并时,有一个偏移量的调整:
for (int j = start + prime; j <= b; j += prime)
{
unite(start - a, j - a);
}
