摘要: 题目描述: B. Minimum Possible LCM time limit per test 4 seconds memory limit per test 1024 megabytes input standard input output standard output You are g 阅读全文
posted @ 2019-07-28 19:49 小张人 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 正常文本开头 include using namespace std; int main() { cout 阅读全文
posted @ 2019-07-28 14:23 小张人 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 思路:见参考文章(原理我是写不粗来了) 代码: 用到了快速幂,米勒罗宾素性检验。 其他分解质因数的方法: 朴素算法:枚举从2到n找n的因子,找到了就不断除,除到不能除为止,再找下一个因子。 为什么保证是素因子,从二开始,假设有二的因子,不断地除直到没有二就能保证二的倍数也没有了。类似于素数筛的思想。 阅读全文
posted @ 2019-07-28 12:14 小张人 阅读(1087) 评论(0) 推荐(0) 编辑
摘要: 适用范围:较大数的较快素性判断 思路: 因为有好的文章讲解具体原理(见参考文章),这里只是把代码的大致思路点一下,读完了文章如果还有些迷糊,可以参考以下解释 原理是费马小定理:如果p是素数,则a^(p-1)%p==1,加上二次探测定理:如果p是一个素数,则x^2%p==1的解为,则x=1或者x=n- 阅读全文
posted @ 2019-07-28 10:14 小张人 阅读(3345) 评论(0) 推荐(0) 编辑
摘要: 快速幂: 计算a^n%p的值,怎么算呢?直接算当然可能溢出。我们有一条引理:(a*b)%p=((a%p)*(b%p))%p.在这个引理上进行指数上的合并从而得到快速幂算法。 具体地,有两种思路,一种是减小a值,以防溢出,一种是减小b值,加快计算。 怎么减小a值?a=a%p,就把a的值降到了p以下。对 阅读全文
posted @ 2019-07-28 00:24 小张人 阅读(1013) 评论(0) 推荐(0) 编辑
分享到: