摘要: A0x + B0y = knAx + By = k'n左差得(A - A0)x + (B -B0)y = 0(mod n)所以只要枚举A0, B0的倍数就行了。。公式就是 ( (i*a)%n, (i*b)%n ), i =0, 1, ... , n-1i*a, i*b如果大于n的话 不会影响结果, ... 阅读全文
posted @ 2015-07-24 16:08 UsedRose 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 我们考虑,因为最多n为10^7, 7*9 = 63,也就是说一个数x如果不是self-number,那么他的原数一定在[x-63, x]之间。由于空间有限,所以我们可以用大小>=64的数组优化(只要能存下前63个数即可)。另外一个优化,打表处理10^4之内的每位数字之和, 则d(x) = x + s... 阅读全文
posted @ 2015-07-24 12:44 UsedRose 阅读(98) 评论(0) 推荐(0) 编辑