数论初步——欧几里得算法和唯一分解定理

Posted GGBeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数论初步——欧几里得算法和唯一分解定理相关的知识,希望对你有一定的参考价值。

具体内容参见紫书p310-p312

一、辗转相除法

  • 恒等式:gcd(a,b) = gcd(b,a%b)
  • 边界条件:gcd(a,0) = a

 

辗转相除法的关键(恒等式)和边界条件一起构成了下面的程序:

int gcd(int a, int b)
{
	return b == 0 ? a : gcd(b, a%b);
} 

 

  这个算法称为欧几里得算法!!!!

 

二、求lcm

  • 公式:gcd(a,b) * lcm(a,b) = a * b

正确的写法(先除后乘):lcm(a,b) = a / gcd(a,b) * b

 

以上是关于数论初步——欧几里得算法和唯一分解定理的主要内容,如果未能解决你的问题,请参考以下文章

数论-算术基本定理

蓝桥集训之数论基础

欧几里德算法和唯一分解定理

数论之欧几里德算法

《夜深人静写算法》数论篇 - (10) 扩展欧几里得定理

Python版本的常见模板 数论