数论笔记
文亘习丶
这个作者很懒,什么都没留下…
展开
-
求最大公约数——欧几里德算法(辗转相除)
原创 2020-07-30 17:24:31 · 212 阅读 · 0 评论 -
裴蜀定理的简单证明
原创 2020-07-30 17:22:20 · 1594 阅读 · 0 评论 -
欧拉定理&费马小定理&扩展欧拉定理(证明)
原创 2020-07-29 22:38:13 · 334 阅读 · 1 评论 -
扩展欧几里得算法的原理及其代码实现
引例:求满足ax+by+c=0的x的最小正整数解;扩展欧几里德给出的结论是:给定a,b,则一定存在整数x,y,使得ax+by=gcd(a,b);证明可以在看完引例求解之后随便找一篇讲证明的文章就能看懂,因为思路是一致的,是引例求解思路的逆用,用数学归纳法证明,这里不赘述;引例求解思路:代码实现:细节都在注释里了,上面理解了看完注释应该可以理解代码的写法//扩展欧几里德,给定a,b,则一定存在整数x,y,使得ax+by=gcd(a,b);可以用于二元一次方程求整数解//整个过程是,先得到了题原创 2020-07-28 20:02:47 · 892 阅读 · 0 评论 -
得到互质数的个数——轻松认识欧拉函数
欧拉函数用来求 在小于x的正整数且与x互质(公约数只有1)的数的个数,一般用φ(x)表示,这个φ(x)就是欧拉函数,也就是用来解决 “在1-x之间有多少个数与x构成互质关系”的问题通式:特别的,φ(1)=1,∏ 是直积符号,表示连乘其中p1,p2…pi…pn为x的所有质因数,x是一个正整数证明:根据唯一分解定理,我们可以把一个整数唯一地分解为多个质数幂次的乘积,即找其中的特殊情况(或者理解成取出连乘因子中的其中一个也是满足唯一分解定理的形式),也就是一个数可以分解成一个质数的幂次的特殊情况,原创 2020-07-27 23:52:47 · 2843 阅读 · 0 评论 -
线性的质数判断——欧拉筛法
素数本身这个概念很简单,要找因子只有1和它本身的数,最简单的求法就是1到根号n遍历判断因子如果要遍历1到n的话,复杂度是O(n3/2),处理小规模的数据没问题,但是大规模就会比较慢。当然如果只要判断一个数,那直接用这个也很快;还能更快吗?蒋委员长说过一句名言:以空间换时间,这句话在历史上被人臭骂,但是在计算机领域确实是个很不错的思想,因为大部分情况时间复杂度比空间要宝贵的多。那么这里就有一种以空间换时间的方法,叫筛法;筛法的基础思想就是当我们遍历从2开始的数时,每遍历一个,把它的倍数全部标记了,原创 2020-07-18 18:59:41 · 1234 阅读 · 0 评论