【数论】素数(五):梅森素数(Lucas_Lehmer判定法)
我的数论-素数部分博客共5part:
基本概念、性质、猜想、定理
素数筛法(埃式筛、欧拉筛、区间筛)
素数判断法(朴素法、模6法、Rabin-Miller及改进)
数的分解(Pollard-rho)
梅森素数(Lucas_Lehmer判定法)
梅森素数
梅森数&梅森素数:m∈N∗且是素数,Mn=2m−1m\in N^*且是素数,M_n=2^m-1m∈N∗且是素数,Mn=2m−1 ,MnM_nMn 称第nnn 个梅森数;若MnM_nMn 也是素数,则为梅森素数。
梅森素数Mp⇒pM_p\Rightarrow pMp⇒p 是素数
Lucas-Lehmer判定方法: 构造序列{rk}\{r_k\}{rk}:r1=4,rk≡rk−12−2(modMp)r_1=4,r_k\equiv r_{k-1}^2-2(\mod M_p)r1=4,rk≡rk−12−2(modMp) 。Mp是素数⇔rp−1≡0(modMp)M_p是素数\Leftrightarrow r_{p-1}\equiv 0(\mod M_p)Mp是素数⇔rp−1≡0(modMp) ,复杂度O(p3)O(p^3)O(p3) 。
// multi_add(a,b,m) : 计算a*b mod m,防止溢出 bool Lucas_Lehmer(int p) // M_p=2^p-1是否为素数 {ll r[100];ll m = (1ll << p) - 1;r[1] = 4ll;if(p==2)return true;for (int i = 2;i<p;i++)r[i] = (multi_add(r[i - 1], r[i - 1], m) - 2) % m;return r[p - 1] ? false : true; }
【数论】素数(五):梅森素数(Lucas_Lehmer判定法)相关推荐
- Mersenne素数(梅森素数)C语言版
梅森数与梅森素数 梅森数(Mersenne number)又称麦森数,是指形如2^p-1的正整数,其中指数p是素数,常记为Mp .若其是素数,则称为梅森素数. -------注意------- 梅森数 ...
- python程序判断梅森素数_梅森素数的探索之旅
2009年5月22日,对于很多人来说并不是什么特别的日志,不过数学界这边又传来了一个"喜讯":我们已经找到了第47个梅森素数,即$2^{42643801}-1$是一个素数!新的素数 ...
- python代码 素数集合 回文素数,反素数,梅森素数,双素数
回文素数是指一个数既是素数也是回文数.例如:131既是素数也是回文数.编写程序显示钱100个回文素数.每行显示10个素数,并且能准确对齐 import mathdef is_palindrome(nu ...
- 梅森素数:千年不休的探寻之旅
还记得年少时的梦吗? 还记得你小学时背诵的素数表吗?那时候它还叫做质数表"2.3.5.7......"如今你是否已经真正理解了老师说过的话:这些只能被1和本身整除的数,具有着无穷的 ...
- 【历史上的今天】12 月 7 日:历史上第一次直播回放;唱片协会起诉 Napster;最大的梅森素数被发现
整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2021 年 12 月 7 日,在 1889 年的今天,世界上第一个充气轮胎受专利保护.充气轮胎是自行车发展史上的 ...
- 梅森素数--美丽的贝壳
一.价值五万美元的素数 2000年4月6日,住在美国密歇根州普利茅茨的那扬·哈吉拉特瓦 拉(Nayan Hajratwala)先生得到了一笔五万美元的数学奖金,因为他 找到了迄今为止已知的最大素数,这 ...
- 100个python算法超详细讲解:梅森素数
[100个python算法超详细讲解@谷哥技术] 1.问题描述 梅森数(Mersenne Prime)指的是形如2 n -1的正整数,其中指数n 是素数,记为Mn.如果一个梅森数是素数,则称其为梅森素 ...
- 梅森素数为什么这么重要?
"它反映了一个国家的科技水平,是人类智力发展在数学上的一种标志,更是整个科技发展的里程碑之一.梅森素数究竟是个怎样的数,为何如此重要呢?" 众所周知,素数也叫质数,是只能被自己和1 ...
- nefu 120 梅森素数
题意:给出p(1<p<=62),让你求Mp=2^p-1是否为梅森素数. 梅森素数:若p为素数,且Mp=2^p-1也是素数,则Mp为梅森素数. 若p为合数,Mp=2^p-1一定为合数 若p为 ...
最新文章
- javascritp笔记1
- java WEB 基础复习_开篇--Java Web基础知识
- winsock 错误
- java servlet 作用_servlet的作用,servlet有什么用?
- 计算机二级2021辅导书,2021该如何准备计算机二级考试?
- [USACO1.1]黑色星期五Friday the Thirteenth
- Django笔记-5-视图
- python cmdb_Django之入门 CMDB系统 (一) 基础环境
- 微软不愿意提及的软肋:Win10的语音识别
- sqlite3 not found问题解决方法
- yarn-cluster 和yarn-client区别
- 最大子序列和算法C语言,最大子序列和O(N)算法简单分析『神兽必读』
- 搜索广告的整体架构-子模块划分
- Exchange会议室邮箱4种常见会议预定场景的介绍和设置
- 新能源产业写入2021年11省两会政府工作报告,大爆发在即!
- Python-Django毕业设计基于的餐厅管理系统(程序+Lw)
- Ui设计中常用的6大工具
- 对不同数据源特征提取的(详见上一篇博客问题)的进一步思考
- C++学习资料和视频
- Thread.interrupted()