欧几里得算法(辗转相除法)

简单来说就是: c是a和b的最大公因数,当且仅当c是b和a%b的最大公因数
证明 (注:下文的a/b是整型变量的除)
gcd(a,b) 设a>b     a=b*k+c (c=a%b)   即a=b*k+a%b       对于u=gcd(a,b)        u能整除a也能整除b   (1)                 (u能整除a---->a=k1*u,u能整除b---->b=k2*u     c=a%b=a-(a/b)*b  )
a=b*k+c (c=a%b)     (2)                 (将a=k1*u和b=k2*u代入c=a-(a/b)*b得  c=(k1-(k1/k2)*k2)*u  即c为u的倍数)
(1)+(2) u能整除cgcd(a,b)=gcd(b,a%b)....

拓展欧几里得

主要是求关于x和y的方程ax+by=gcd(a,b)的所有整数解
既然是拓展欧几里得,那肯定和欧几里得算法有关系   gcd(a,b)=gcd(b,a%b)拓展到方程里面有a*x1+b*y1=gcd(a,b)
b*x2+(a%b)*y2=gcd(b,a%b)方程右边相等,得a*x1+b*y1=b*x2+(a%b)*y2a%b可替换为a-(a/b)*b    得a*x1+b*y1=b*x2+(a-(a/b)*b)*y2
整理得a*x1+b*y1=a*y2+(x2-(a/b)*y2)*b因为等号两边的a和b的系数要相同我们得到两个等式x1=y2;
y1=x2-(a/b)*y2;按欧几里得算法对于gcd(a,b)一直化下去最终会得到b=0,此时gcd(a,b)=a
即对于此时的方程a*x+b*y=gcd(a,b)来说x=1,y=0
我们可以回溯得到最初的方程的x和y的值
需要注意
如果有解的话这样得到的解肯定是有无数多个的对于a*x+b*y=c来说
(1)同时把x+b/c   y+a/c得到的x和y也是满足方程的(2)如果c % gcd(a,b) != 0,即c不是gcd(a,b)的整数倍,则无解(3)c % gcd(a,b) == 0 且 c / gcd(a,b) = t那么求出方程 a * x + b * y = gcd(a,b)的所有解x,y,将x,y乘上t,对应的x’,y’即是方程a * x + b * y = t * gcd(a,b)的解

欧拉定理与费马小定理

定义:对于两个互质的正整数a,n(n>2)有a^φ(n)≡1(mod n) 欧拉定理
定义:对于质数p,任意整数a,均满足:a^p≡a(mod p)费马小定理
定义:若正整数a,n互质,那么对于任意正整数b,有a^ b ≡ a^(b mod φ(n))(mod n) 欧拉定理的推论

欧拉函数 φ(n)

定义:在数论中φ(n)=在区间[1,n]中与n互质的数的个数(包括1)
 φ(x)=x(1-1/p(1))(1-1/p(2))(1-1/p(3))(1-1/p(4))…..(1-1/p(n)) 其中p(1),p(2)…p(n)为x的所有质因数;x是正整数; φ(1)=1(唯一和1互质的数,且小于等于1)。注意:每种质因数只有一个。     例如:         φ(10)=10×(1-1/2)×(1-1/5)=4;         φ(30)=30×(1-1/2)×(1-1/3)×(1-1/5)=8;        φ(49)=49×(1-1/7)=42;
欧拉函数的性质

(1)p^k型欧拉函数

φ(p^k)=p^k-p^(k-1)=(p-1)*p^(k-1)
证明:

(2)n*m型欧拉函数

若n和m互质则φ(n*m)=φ(n)*φ(m)

(3)欧拉函数的特殊性质

当n为奇数的时候φ(2*n)=φ(n)对于两个互质的正整数a,n(n>2)有a^φ(n)≡1(mod n)  此公式即欧拉定理当n=p且a与素数p互质(即:gcd(a,p)=1)则上式有: a^(p-1)≡1(mod n)此公式即 费马小定理
欧拉函数的延伸

等于或等于n的数中,与n互质的数的总和为:φ(x) * x / 2 (n>1)

完全余数集合

定义小于 n 且和 n 互质的数构成的集合为 Z(n) ,称呼这个集合为 n 的完全余数集合。 显然 |Z(n)| =φ(n)

同余定理

如果 a mod b = c 则有(a+kb) mod b =c(k为非0整数)
如果 a mod b = c 则有(ka) mod b =kc (k为正整数)
(a+b) mod c =((a mod c)+(b mod c )) mod c;
(ab) mod c=((a mod c)(b mod c)) mod c

求解同余方程组

求解同余方程组

|x≡ a1​(modm1​)
|x≡ a2​(modm2​)
|x≡ a3​(modm3)
.....
x≡ ak(modm2k)

其中m1,m2,m3…mk​为两两互质的整数
求x的最小非负整数解

定理

积性函数 (可乘函数)

莫比乌斯函数


上面两张图片来自博客https://blog.csdn.net/tomandjake_/article/details/81083051
未完…

(蒟蒻的)初等数论笔记相关推荐

  1. 蒟蒻信安笔记1:网络扫描与网络侦查

    网络渗透测试实验一 1.搜索麻省理工学院网站含"network security" 的pdf文档 2.搜索照片中的位置信息 3.手机位置定位 4.Base64编码解码 5.地址信息 ...

  2. 一只蒟蒻的A*学习笔记

    更多请见DUMBLOG 一只蒟蒻的A* 学习笔记 A* 是啥?? A* 用来干啥?? 首先,A-Star 算法只能用在数据规模很大的搜索题中,这时直接用 BFS 会超时,而利用 启发函数(估价函数) ...

  3. 蒟蒻的python 学习笔记 ——北京理工大学嵩天mooc(有时间就看就更新,尽量让笔记容易懂,蟹蟹各位大神不吝赐教)

    蒟蒻的python 学习笔记 前言 课一:python语言程序设计 第一周:python 基本语法元素 1.1 程序设计基本方法 1.2 python 环境配置 1.3 实例1:温度转换 1.4 py ...

  4. python字符串去头尾_悉尼大学某蒟蒻的Python学习笔记

    About me 本蒟蒻是悉尼大学计算机科学大一的学生,这篇博客记录了学习INFO1110这门课的一些心得,希望能对大家有帮助. To start with 因为计算机只能识别机器语言,所以我们需要编 ...

  5. 蒟蒻的线段树入门模板笔记

    线段树适合处理那些问题? 线段树是算法竞赛中常用的用来维护 区间信息 的数据结构. 线段树可以在O(logN)的时间复杂度内实现单点修改.区间修改.区间查询(区间求和,求区间最大值,求区间最小值,求区 ...

  6. 本蒟蒻对于二分图一些定理的理解

    本蒟蒻对于二分图一些定理的理解 先给出一些定理 (常识) 1.对于一个无向图 G,若 G 中的所有回路长度均为偶数,则G为一个二分图. 2.二分图的最小点覆盖 = 最大匹配数. 3.二分图的最大独立集 ...

  7. 【bzoj4916】神犇和蒟蒻 杜教筛

    题目描述 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; 输入 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; 输出 请你输出一个整数A=\sum_{ ...

  8. 蒟蒻浅谈树链剖分之一——两个dfs操作

    树链剖分,顾名思义就是将树形的结构剖分成链,我们以此便于在链上操作 首先我们需要明白在树链剖分中的一些概念 重儿子:某节点所有儿子中子树最多的儿子 重链:有重儿子构成的链 dfs序:按重儿子优先遍历时 ...

  9. 【BZOJ4916】神犇和蒟蒻(杜教筛)

    [BZOJ4916]神犇和蒟蒻(杜教筛) https://www.cnblogs.com/cjyyb/p/8297338.html 杜教筛技巧

  10. USACO 简易题解(蒟蒻的题解)

    蒟蒻难得可以去比赛,GDOI也快到了,还是认真刷题(不会告诉你之前都在颓废),KPM 神犇既然都推荐刷USACO, 辣就刷刷. 现在蒟蒻还没刷完,太蒟刷得太慢,so 写了的搞个简易题解(没代码,反正N ...

最新文章

  1. Effective.Java第23-33条(泛型相关)
  2. SpringBoot+Vue+OpenOffice实现文档管理(文档上传、下载、在线预览)
  3. VTK:图表之AdjacencyMatrixToEdgeTable
  4. 1059. Prime Factors (25)
  5. 虚拟存储器(虚拟内存Vitual Memory)
  6. React 篇 Search Bar and content Table
  7. mtk pwmlinux timer
  8. python获取窗口句柄_Python+selenium 获取浏览器窗口坐标、句柄的方法
  9. Android系统(244)---Zygote进程的启动流程
  10. python中write什么意思_Python中操作文件之write()方法的使用教程
  11. 百度离线语音合成SDK使用
  12. 阿里云邮箱标准版集团版尊享版怎么选
  13. 线下娱乐“换血”,沉浸式体验会成为下一个10年的主题吗?
  14. 华为服务器休眠远程怎么唤醒,华为路由WS5200怎么设置远程唤醒功能
  15. 学习二叉树必须知道的基本性质
  16. ROC曲线和PR曲线,AP,mAP
  17. 优酷回应非会员收看3000秒广告;亚马逊推出Titan大语言模型;Android 14首个Beta版本释出 | 极客头条
  18. 斯蒂夫乔布斯传札记:第六波
  19. Python学习.第六天.字典
  20. 参照国家一级博物馆运行评估指标体系,博物馆综合业务服务平台就该如此建设

热门文章

  1. 全网最全最新安装nodes方式,楼主亲测好用
  2. 小米笔记本适合计算机专业,一天写完硕士毕业论文_论文一天写5000可能吗
  3. Linux:分享七款界面非常漂亮的Linux操作系统
  4. Postman发送请求报错【{ “timestamp“: “2022-09-30T07:12:17.782+00:00“, “status“: 400, “error“: “】
  5. 在线模拟c语言编程,c语言模拟编程学习软件v2019
  6. Thinkpad T460p 扩容重装学习----BIOS设置硬盘启动
  7. 东北大学2022年计算机考研复试在几月
  8. 【文文殿下】Win7打开无线热点
  9. 【Festo仿生】放大招丨你见过比他灵活的“机械手”吗?
  10. 数据治理全景图谱(PPT)