当前位置: 首页 > news >正文

福州企业做网站催眠物语wordpress

福州企业做网站,催眠物语wordpress,重庆传媒公司,可用来制作网页的软件前言 来咯来咯,今天的数论部分来了,今天比较水啊,因为课实在是比较多。 今天的数论部分是讲裴属定理和扩展欧几里得算法,当然还有今天的题目(两道树状数组 一道连通块的问题)我放到下一篇了。 裴属定理 …

前言

来咯来咯,今天的数论部分来了,今天比较水啊,因为课实在是比较多。

今天的数论部分是讲裴属定理扩展欧几里得算法,当然还有今天的题目(两道树状数组 + 一道连通块的问题)我放到下一篇了。


裴属定理

第一次听到这个定理的时候感觉压力好大,这个名字一看就知道不简单,但是学了之后才发现还挺简单的。

这个裴属定理主要是为了引出后面的扩展欧几里得算法的,所以大家有个印象就好了,不必较真。

话归正题,什么是裴属定理

裴属定理是这样的,对于任意的整数ab,必定存在一组整数xy,使得:

a * x + b * y = gcd(a, b)

老样子,先证明。

我们先证明必定存在一对xy(不一定是整数),使得a * x + b * y = gcd(a, b)

首先设d = gcd(a, b),那么da的约数d也是b的约数。

随后依据算数基本定理将dab展开,可以发现d是包含在ab中的,显然存在一组x, y使得

a * x + b * y = gcd(a, b)

那么如何证明x, y均为整数呢?这个主播是不会的哈,但是主播知道怎么求出xy。使用扩展欧几里得算法


欧几里得算法

在推导扩展欧几里得算法之前呢。我们先来复习一下欧几里得算法


代码

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

代码很简单对吧,当然思路也很简单,具体推导过程我就不讲了,感兴趣的小伙伴可以去看我前面的博客(数论2)


扩展欧几里得算法

随后我们来推导扩展欧几里得算法

首先来分析当b = 0时,x和y的值,设x * a + y * b = a,显然:x = 1y = 任意值,这也就代表着我们要求的x,y可能不止一对,为了方便讨论我们y = 0 啊。

随后我们来分析b不为0的情况。

因为是递归,所以我们假设已知b * y + (a % b)x = gcd(b, a % b)中的xy

我们知道:

a % b = a - [a/b] * b

a % b = r

r = a - [a/b] * b

r代入上式可得:

b * y + (a - [a/b] * b) * x = gcd(b, a % b)

随后我们提出b可得

b * (y - [a/b] * x) + a * x = gcd(b, a % b)

到此我们就得出来了xy的递推公式,是不是很简单?


代码

int gcd(int a, int b, int& x, int& y)
{if (b == 0){x = 1, y = 0;return a;}int d = gcd(b, a % b, y, x);y -= a / b * x;return d;
}

http://www.dtcms.com/a/502868.html

相关文章:

  • 图文并茂:全面了解UART相关知识(TTL+RS232+RS484)
  • VMware Euler系统Ctrl+C/V共享剪贴板完全指南:从配置到彻底清理
  • IOT项目——STM32
  • 【物联网架构】
  • 【编程】IDEA自定义系统注解格式|自定义自定义注解格式
  • 定位网站关键词dw网页制作模板源代码
  • 【Linux网络】封装Socket
  • Solidity智能合约开发入门攻略
  • AI决策系统:从数据到行动的智能跃迁——底层逻辑与实践全景解析
  • 好看的单页面网站石岩网站设计
  • 未来的 AI 操作系统(二)——世界即界面:自然语言成为新的人机交互协议
  • 经典排序算法的实现与解析
  • 流量转化与生态重构:“开源AI智能名片链动2+1模式S2B2C商城小程序”对直播电商的范式革新
  • Docker 常用命总结
  • git 和 tortoisegit的快速使用教学(上传至gitee或GitHub)
  • 基于单片机的智能家居多参数环境监测与联动报警系统设计
  • OpenHarmony 6.0 低空飞行器开发实战:从AI感知检测到组网协同
  • 专业做网站排名的人做短视频网站
  • 从协议到工程:一款超低延迟RTSP/RTMP播放器的系统级设计剖析
  • Visio 2024 下载安装教程,安装包
  • 郑州做网站公司+卓美电子商务网页设计试题
  • Java 大视界 -- 基于 Java 的大数据实时流处理在工业物联网设备状态监测中的应用与挑战
  • ESP3266 NodeMCU 使用Arduino点亮 ST7789 240x240 tft屏
  • OpenHarmony平台大语言模型本地推理:llama深度适配与部署技术详解
  • OpenHarmony 的 DataAbility:从 URI 到跨设备数据共享的完整解析
  • ipv6 over ipv4隧道技术
  • 谷歌下载官网舆情优化公司
  • 桐城网站设计做小程序用什么软件
  • 【小学教辅】六年级上册语文知识点课课贴(8页)PDF 重点课文解析 生字词易错题整理 电子版可下载打印|夸克网盘
  • 17.AVL树的实现(一)