摘要: 设gcd(a, b) = a xor b = c那么我们可以证明c=a-b那么同时c又是a的因子(c是a与b的最大公因数)所以我们可以枚举c,然后枚举c的倍数,也就是a有了a和c可以算出b为a-c然后最后验算是否a xor b = c就ok了。这里的枚举方式非常的巧妙... 阅读全文
posted @ 2018-07-10 22:47 Sugewud 阅读(96) 评论(0) 推荐(0)
摘要: 首先分解,然后可以发现同一个因子ai不能存在于两个以上的数中因为求的是最小公倍数,如果有的话就可以约掉所以数字必然由ai的pi次方的乘积组成,那么显然,在a最小为2,而b大于2的情况下a*b>a+b所以要让和最小,就每一个ai的pi次方作为一个数就好了。另外注意lon... 阅读全文
posted @ 2018-07-10 22:00 Sugewud 阅读(133) 评论(0) 推荐(0)
摘要: 这道题感觉非常的秀因为结果会很大,所以就质因数分解分开来算非常的巧妙!#include#include#include#include#define REP(i, a, b) for(int i = (a); i prime;int e[MAXN];void ini... 阅读全文
posted @ 2018-07-10 21:13 Sugewud 阅读(114) 评论(0) 推荐(0)
摘要: 就是暴力枚举a, b然后和题目给的数据比较就ok了。刘汝佳这道题的讲解有点迷,书上讲有x1和a可以算出x2, 但是很明显x2 = (a * x1 +b)没有b怎么算x2?然后我就思考了很久,最后去看他的代码发现他的代码和他讲的是两回事他的代码里直接是枚举a和b,不是按... 阅读全文
posted @ 2018-07-10 20:40 Sugewud 阅读(85) 评论(0) 推荐(0)
摘要: (1)这道题要用到 unsigned long long, 弄了我好久这道题范围可以达到2的64次方-1, 而long long 最多到2的63次方-1, 而unsigned long long可以到2的64次方-1,所以要用这个类型,注意这个类型只有正数输入输出用p... 阅读全文
posted @ 2018-07-10 20:05 Sugewud 阅读(160) 评论(0) 推荐(0)