首页 > 编程语言 >「Note」欧几里得算法全家桶

「Note」欧几里得算法全家桶

时间:2025-01-14 14:55:55浏览次数:1  
标签:le gcd 欧几里得 算法 Note 因数 bx 公因数

一,欧几里得算法

1. 内容

\(\gcd (a, b) = \gcd (b, a \mod b)\)

2. 证明

先假设 \(a > b\),\(a = bx+y\),其中 \(x = \lfloor\frac{a}{b}\rfloor, 0 \le y \lt b\)。
也就是 \(b\) 除以 \(a\) 等于 \(x\) 余 \(y\)。
原命题就是 \(\gcd (a, b) = \gcd (y, b)\)。

由 \(a = bx + y\) 可以得到 \(y = bx - a\),由于 \(\gcd (a, b)\) 必定是 \(a, b\) 的因数,所以 \(\gcd (a, b)\) 也是 \(y\) 的因数。

按照上面的方法,我们发现 \(\gcd (y, b)\) 是 \(y\) 和 \(b\) 的因数,由 \(a = bx+y\) 得知它也是 \(a\) 的因数。

整理所有信息。

  • \(\gcd (a, b)\) 是 \(a, b\) 的最大公因数。
  • \(\gcd (y, b)\) 是 \(a, b\) 的公因数。
  • \(\gcd (y, b)\) 是 \(y, b\) 的最大公因数。
  • \(\gcd (a, b)\) 是 \(y, b\) 的公因数。

因为最大公因数大于等于所有因数,我们知道 \(\gcd (y, b) \le \gcd (a, b)\) 且 \(\gcd (a, b) \le \gcd (y, b)\)。所以两数相等,命题得证。

标签:le,gcd,欧几里得,算法,Note,因数,bx,公因数
From: https://www.cnblogs.com/Manki233/p/18670735

相关文章

  • 【轻松掌握数据结构与算法】哈希(Hashing)
    什么是哈希?哈希是一种将任意长度的数据转换为固定长度的数据的技术。这个固定长度的数据通常被称为哈希值或哈希码。哈希函数是实现这一转换的关键,它接受任意长度的输入,并产生一个固定长度的输出。为什么使用哈希?哈希的主要用途之一是快速查找数据。通过哈希函数,我们可以将......
  • 迭代重建算法
    迭代重建算法是图像重建领域中的一种重要方法,尤其在计算机断层扫描(CT)成像中得到了广泛应用。以下是对迭代重建算法的详细介绍:一、基本原理迭代重建算法的基本思想是由测量的投影数据建立一组未知向量的代数方程式,通过方程组求解未知图像向量。具体来说,该算法首先设置一组模拟图......
  • AcWing算法周赛第6场 | 3735 构造完全图
    学习C++从娃娃抓起!记录下AcWing备赛学习过程中的题目,记录每一个瞬间。附上汇总贴:AcWing算法周赛|汇总【题目描述】给定一个由nnn个点和......
  • AcWing算法周赛第6场 | 3734 求和
    学习C++从娃娃抓起!记录下AcWing备赛学习过程中的题目,记录每一个瞬间。附上汇总贴:AcWing算法周赛|汇总【题目描述】用f(x)......
  • 代码随想录算法训练营总结
            为期2个月的训练营时间,总算是一步一步的顺利结束了,撒花撒花!!!    这个训练营算是我第一次比较系统的进行学习数据结构和算法以及刷力扣,以前总是刷到一半就半途而费了,这次总算是坚持着跟着群里的打卡节奏一步一步的完结了。    对于内容来说,内......
  • 代码随想录算法训练营第五十九天|KM47.参加科学大会|KM94.城市间货物运输Ⅰ
    47.参加科学大会(第六期模拟笔试)2、堆优化版(该方法没看懂)邻接矩阵的优点:表达方式简单,易于理解检查任意两个顶点间是否存在边的操作非常快适合稠密图,在边数接近顶点数平方的图中,邻接矩阵是一种空间效率较高的表示方法。缺点:遇到稀疏图,会导致申请过大的二维数组造成空间浪费......
  • 论文研读之“YOLO v1”目标检测深度学习算法一文看懂
    文章目录YOLOv1笔记一、推理阶段1、模型结构2、推理过程解析生成预测框生成条件概率输出tensor解析3、后处理二、训练阶段1、confidence计算2、损失函数YOLOv1笔记一、推理阶段1、模型结构2、推理过程解析该图为数据集为VOC时的情况,S=7,B=2。生成预测框......
  • R语言caret包实战:构建xgboost模型(xgbDART算法、使用的dropout思想)构建回归模型、通过m
    R语言caret包实战:构建xgboost模型(xgbDART算法、使用的dropout思想)构建回归模型、通过method参数指定算法名称、通过trainControl函数控制训练过程目录R语言使用caret包构建xgboost模型(xgbDART算法、使用的dropout思想)构建回归模型、通过method参数指定算法名称、通过trainCo......
  • 2025 算法方向毕业设计选题推荐汇总 python
    目录前言毕设选题选题迷茫选题的重要性更多选题指导最后 前言  ......
  • Day13-【软考】长文!什么是散列表查找?以及所有的排序算法是怎样的?如何进行堆排序(重点!)?
    文章目录什么是散列表查找?计算出空间相同怎么办?排序有哪些概念?排序方法有哪些分类?什么是直接插入排序?(稳定)什么是希尔排序?什么是冒泡排序?(稳定)什么是快速排序?O(nlog2为底n为真数)什么是简单选择/直接选择排序?什么是堆排序(重点!)?O(nlog2为底n为真数)比简单的选择排序,有什么优势......