摘要: 求证:任何一个大于3的质数加一或减一必然是6的倍数 每三个连续的数之中必有一个是3倍数 设这个质数叫a,a肯定为无为3的倍数的奇数(因为是个质数) 那么a-1,a+1其中必有1个是3的倍数 显然a-1和a+1都是偶数 即2的倍数 所以其中必有一个为2的倍数且为3的倍数的数 即有6的倍数 #inclu 阅读全文
posted @ 2018-08-01 19:51 SUMay 阅读(213) 评论(0) 推荐(0) 编辑
摘要: tips: 1.并查集裸题,用isroot数组记录有几个根节点。 3.改变isroot数组类型可以统计一个集合中元素的个数。 isroot[finddad(i)]++; 2.hdu1272--isroot数组出bug了。 #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2018-08-01 19:32 SUMay 阅读(126) 评论(0) 推荐(0) 编辑
摘要: tips: 1.并查集产生的每一个集合都是一棵树。 2.流程:初始化;查找--判断两个元素是否在一个集合;合并。 3.查找过程递归会爆栈(本题),可以用非递归的方法进行路径压缩。 4.用并查集判断是否有环:对同一个集合来说只存在一个根节点,且将其作为所属集合的标识。 5.合并的过程是一个建树的过程。 阅读全文
posted @ 2018-08-01 19:25 SUMay 阅读(300) 评论(0) 推荐(0) 编辑