【数学归纳法 反证法】菲蜀定理

server/2024/9/20 9:19:52/ 标签: c++, 力扣, 数学归纳法, 数学, 反证法, 互质, 菲蜀定理

裴蜀定理(或贝祖定理,Bézout’s identity)得名于法国数学家艾蒂安·裴蜀,说明了对任何整数a、b和它们的最大公约 数d,关于未知数x和y的线性不定方程(称为裴蜀等式):若a,b是整数,且(a,b)=d,那么对于任意的整数x,y,ax+by都一定是d的倍数,特别地,一定存在整数x,y,使ax+by=d成立。
它的一个重要推论是:a,b互质的充要条件是存在整数x,y使ax+by=1.

定理 ⟺ \iff 推论

假定a ≠ \neq = 0 b ≠ \neq = 0 → \rightarrow 它们的公约数不为0。
令a1和b1的最大公约数是q,a1=qa,b1=ab。
则a1x+b1y=d ,等式左右同时除以d,变成ax+by=1

下面来证明a > 0 ,b > 0一定有整数解

初始条件:a > 0 b > 0,a和b互质
如果a = b,且互质 → \rightarrow a=b =1 ,则至少有解为 x=-1,y=2。
如果a ≠ \neq = b
如果 a < b,a和b互换,x和y互换。
令 c =a -b
ax + by = (b+c)x + by = b(x+y)+cx
将 b改名为a ,x+y改名为x,c改名为b ,x改名为y。则变成了:ax+by
且max(a,b)变小。
由于 c =a-b,且 a > b,故不断持续此过程,一定将a,b都变成1。故一定有解。

a > b > 0互质,则(a-b)和b互质

反证法:假定(a-b)不互质,其有公约数e>1。则 a-b = f1e ,b = f2e → \rightarrow a = (f1+f2)e → \rightarrow a和b有公约数 e,与假设矛盾。

a或b为负数

令abs(a)x+abs(b)y=1的一个解为(x1,y1)
如果 a < 0 b < 0 ,则解为(-x1,-y1)
如果 a < 0 b > 0,则解为(-x1,y1)
如果 a> 0 b < 0 ,则解为(x1,-y1)

多个数也符合菲蜀定理

下面来证明:如果n个数符合菲蜀定理,则n+1个数也符合。
令这 n 个数为: a 1 , a 2 ⋯ a n , a n + 1 令这n个数为: a1,a2 \cdots a_n,a_{n+1} 令这n个数为:a1,a2an,an+1
令前n个数的最大公约数为:q 注意:n+1个数互质,前n个数不一定互质
根据菲蜀定理
则 a 1 x 1 + a 2 x 2 ⋯ a n x n = q 式一 q y 1 + a n + 1 x n + 1 = 1 式二 则 a1x1+a2x2 \cdots a_nx_n = q \quad 式一 \\ qy1 +a_{n+1}x_{n+1} =1 \quad 式二 a1x1+a2x2anxn=q式一qy1+an+1xn+1=1式二
将式一左右都乘以y1的
a 1 x 1 y 1 + a 2 x 2 y 1 ⋯ a n x n y 1 = q y 1 式三 a1x1y1+a2x2y1 \cdots a_nx_ny1 = qy1 \Large \quad 式三 a1x1y1+a2x2y1anxny1=qy1式三
联合式二式三得:
a 1 x 1 y 1 + a 2 x 2 y 1 ⋯ a n x n y 1 + a n + 1 x n + 1 = 1 a1x1y1+a2x2y1 \cdots a_nx_ny1 +a_{n+1}x_{n+1} = 1 a1x1y1+a2x2y1anxny1+an+1xn+1=1
解为:
x 1 y 1 , x 2 y 1 , ⋯ x n y 1 , x n + 1 x1y1 , x2y1 , \cdots x_ny1,x_{n+1} x1y1,x2y1,xny1,xn+1 得证

如果有整数解,则一定互值

反证法:假定有公约数q,q>1。则 ax+by ⋯ \cdots 之和一定是q的倍数,不会为1。

扩展阅读

视频课程

有效学习:明确的目标 及时的反馈 拉伸区(难度合适),可以先学简单的课程,请移步CSDN学院,听白银讲师(也就是鄙人)的讲解。
https://edu.csdn.net/course/detail/38771

如何你想快速形成战斗了,为老板分忧,请学习C#入职培训、C++入职培训等课程
https://edu.csdn.net/lecturer/6176

相关下载

想高屋建瓴的学习算法,请下载《喜缺全书算法册》doc版
https://download.csdn.net/download/he_zhidan/88348653

我想对大家说的话
闻缺陷则喜是一个美好的愿望,早发现问题,早修改问题,给老板节约钱。
子墨子言之:事无终始,无务多业。也就是我们常说的专业的人做专业的事。
如果程序是一条龙,那算法就是他的是睛

测试环境

操作系统:win7 开发环境: VS2019 C++17
或者 操作系统:win10 开发环境: VS2022 C++17
如无特殊说明,本算法用**C++**实现。


http://www.ppmy.cn/server/10161.html

相关文章

IO综合练习

一.文件拷贝 拷贝一个文件夹&#xff0c;需要考虑子文件夹 import java.io.*;public class IO {public static void main(String[] args) throws IOException {File f new File("C:\\Users\\21566\\IdeaProjects\\untitled");File copy new File("C:\\Users…

助力突发异常事件预警保障公共安全,基于YOLOv7【tiny/l/x】模型开发构建公共生活场景下危险人员持刀行凶异常突发事件检测预警识别系统

基于AI目标检测模型的暴力持刀行凶预警系统是当下保障人民生命安全的新途径&#xff0c;近年来&#xff0c;公众场合下的暴力袭击事件频发&#xff0c;不仅给受害者及其家庭带来了深重的伤害&#xff0c;也对社会的稳定和安全造成了极大的威胁。在这种背景下&#xff0c;如何有…

NPL预训练模型-GPT-3

简介及特点 GPT-3是一个由OpenAI开发的自然语言处理&#xff08;NLP&#xff09;预训练模型&#xff0c;它是生成式预训练变换器&#xff08;Generative Pretrained Transformer&#xff09;系列的第三代模型。GPT-3以其巨大的规模和强大的语言处理能力而闻名&#xff0c;具有…

MongoDB聚合运算符:$setField

MongoDB聚合运算符&#xff1a;$setField 文章目录 MongoDB聚合运算符&#xff1a;$setField语法字段说明 使用举例添加包含点号 (.) 的字段添加以($)开头的字段更新包含(.)的字段更新以($)开头的字段删除包含(.)的字段删除以($)开头的字段 $setField聚合运算符用于添加、更新、…

python5种算法模拟螺旋、分层填充、递归、迭代、分治实现螺旋矩阵ll【力扣题59】

作者介绍&#xff1a;10年大厂数据\经营分析经验&#xff0c;现任大厂数据部门负责人。 会一些的技术&#xff1a;数据分析、算法、SQL、大数据相关、python 欢迎加入社区&#xff1a;码上找工作 作者专栏每日更新&#xff1a; LeetCode解锁1000题: 打怪升级之旅 python数据分析…

Rx.Net 第四章

哇&#xff0c;你在这一章学到了很多。你应该为自己感到骄傲。本章所涵盖的内容几乎会在你创建的每个可观察对象管道中用到:所有可观察对象都实现IObservable接口。 不鼓励通过手动实现IObservables接口来创建可观察对象。相反&#xff0c;使用一个内置的创建操作符。 …

销帮帮CRM与电商运营增效的关系?

在电商运营中&#xff0c;不同部门之间往往存在信息壁垒&#xff0c;导致客户体验的不连贯。销帮帮CRM通过提供跨职能管理客户关系的共享平台和一体化工作流引擎&#xff0c;使员工能够使用正确的工具和数据更有效地管理跨业务线的客户关系&#xff0c;实现更互联的客户体验。这…

理解与运用Java枚举类中的valueOf()方法

Java枚举&#xff08;enum&#xff09;是一种特殊的类&#xff0c;用于定义一组固定的、有限的常量集合&#xff0c;每个常量称为枚举常量。在处理枚举类型时&#xff0c;valueOf()方法是一个非常重要的工具&#xff0c;它允许我们根据枚举常量的名称动态地获取对应的枚举实例。…

Redis入门到通关之数据结构解析-QuickList

文章目录 ☃️前提概要☃️ 配置项相关☃️简要源码☃️总结 欢迎来到 请回答1024 的博客 &#x1f353;&#x1f353;&#x1f353;欢迎来到 请回答1024的博客 关于博主&#xff1a; 我是 请回答1024&#xff0c;一个追求数学与计算的边界、时间与空间的平衡&#xff0c;0与1…

【华为OD机试C++】字符逆序

《最新华为OD机试题目带答案解析》:最新华为OD机试题目带答案解析,语言包括C、C++、Python、Java、JavaScript等。订阅专栏,获取专栏内所有文章阅读权限,持续同步更新! 文章目录 描述输入描述输出描述示例1示例2代码描述 将一个字符串str的内容颠倒过来,并输出。 数据范围…

Linux之 USB驱动框架-USB总线核心和主控驱动(4)

一、USB设备描述符 一个USB设备描述符中可以有多个配置描述符&#xff0c;即USB设备可以有多种配置&#xff1b;一个配置描述符中可以有多个接口描述符&#xff0c;即USB设备可以支持多种功能&#xff08;接口&#xff09;&#xff1b;一个接口描述符中可以有多个端点描述符。 …

PLSQL数据库

目录 什么是PLSQL数据库 PL数据库的实现方法 PL数据库的基本语法 1.作用 2.语法 3.赋值输出 4.引用 5.异常处理 6.if 判断 7.loop循环 8.while循环 9.for循环 10.游标 11.参数游标 12.索引 13.分区表 什么是PLSQL数据库 PL/SQL&#xff08;Procedure Language/…

每日一题 — 二分查找

704. 二分查找 - 力扣&#xff08;LeetCode&#xff09; 朴素二分查找模板&#xff1a; while(.......){//防止溢出int mid left(right - left)/2;if(........){right mid-1;}else if(......){left mid1;}else{return mid;}} 代码&#xff1a; public int search(int[] num…

WordPress多语言插件如何选择?哪里免费获取?

当你的网站需要覆盖不同语言的受众时&#xff0c;WordPress多语言插件将成为你的得力助手。在本文中&#xff0c;我们将探讨一些顶级的WordPress多语言插件&#xff0c;以及它们如何帮助你轻松地将你的网站内容翻译成多种语言&#xff0c;从而吸引更广泛的受众。 为什么需要Wo…

Java练习题

打印9*9乘法口诀表 解析&#xff1a;利用for循环解决 代码如图所示&#xff1a; public class Cc {public static void main(String[] args) {for (int i 1; i < 10; i){ //从1遍历到9 for(int j 1; j < i; j){ System.out.print(j "*" i "&…

机器学习-10-神经网络python实现-从零开始

文章目录 总结参考本门课程的目标机器学习定义从零构建神经网络手写数据集MNIST介绍代码读取数据集MNIST神经网络实现测试手写的图片 带有反向查询的神经网络实现 总结 本系列是机器学习课程的系列课程&#xff0c;主要介绍基于python实现神经网络。 参考 BP神经网络及pytho…

2024免费专为Mac用户设计的清理和优化工具CleanMyMac X

CleanMyMac X是一款专为Mac用户设计的清理和优化工具。以下是对CleanMyMac X的详细介绍&#xff1a; 一、主要功能 系统清理&#xff1a;CleanMyMac X能够智能扫描Mac的磁盘空间&#xff0c;识别并清理各种垃圾文件&#xff0c;这些垃圾文件包括重复文件、无用的语言安装包、i…

PHP是什么以及它的主要用途是什么?

PHP是什么以及它的主要用途是什么&#xff1f; PHP&#xff0c;全称Hypertext Preprocessor&#xff0c;是一种通用的开源脚本语言。它尤其适用于Web开发&#xff0c;并可嵌入HTML中。PHP最初的设计目标是创建动态生成的网页&#xff0c;随着其不断的发展&#xff0c;现在的PH…

出海不出局 | 小游戏引爆高线市场,新竞争态势下的应用出海攻略

出海小游戏&#xff0c;出息了&#xff01; 根据 Sensor Tower 近期发布的“2024 年 3 月中国手游收入 TOP30”榜单&#xff0c;出海小游戏在榜单中成了亮眼的存在。 其中&#xff0c;《菇勇者传说》3 月海外收入环比增长 63%&#xff0c;斩获出海手游收入增长冠军&#xff0c…

回车符和换行符的区别

回车符&#xff08;Carriage Return&#xff0c;简称CR&#xff0c;ASCII码为13&#xff0c;转义字符\r&#xff09;和换行符&#xff08;Line Feed&#xff0c;简称LF&#xff0c;ASCII码为10&#xff0c;转义字符\n&#xff09;。 这两个东东的区别来源于打字机。 在计算机…