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

wordpress incategory西安网站排名优化培训

wordpress incategory,西安网站排名优化培训,网站空间备案要多久,ae模板下载网站推荐文章目录 欧几里得 ---> 裴蜀定理 ---> 拓展欧几里得基本内容求逆元 证明欧几里得算法(辗转相除法)裴蜀定理扩展欧几里得定理 题目运用裴蜀定理代码 扩展欧几里得[P1082 [NOIP 2012 提高组\] 同余方程 - 洛谷](https://www.luogu.com.cn/problem/P…

文章目录

  • 欧几里得 ---> 裴蜀定理 ---> 拓展欧几里得
    • 基本内容
      • 求逆元
    • 证明
      • 欧几里得算法(辗转相除法)
      • 裴蜀定理
      • 扩展欧几里得定理
    • 题目运用
      • 裴蜀定理
        • 代码
      • 扩展欧几里得
        • [P1082 [NOIP 2012 提高组\] 同余方程 - 洛谷](https://www.luogu.com.cn/problem/P1082)
          • 代码
        • [P5656 【模板】二元一次不定方程 (exgcd) ](https://www.luogu.com.cn/problem/P5656)

欧几里得 —> 裴蜀定理 —> 拓展欧几里得

基本内容

概念解决的问题核心方法提出者/背景
欧几里得算法计算两个整数的GCD辗转相除法 gcd ⁡ ( a , b ) = gcd ⁡ ( b , a m o d b ) \gcd(a, b) = \gcd(b, a \bmod b) gcd(a,b)=gcd(b,amodb)欧几里得(公元前300年)
裴蜀定理判断线性方程 (ax + by = m) 是否有解存在性定理:解存在当且仅当 (m) 是 gcd ⁡ ( a , b ) \gcd(a, b) gcd(a,b)的倍数裴蜀(18世纪)
扩展欧几里得算法求解方程 a x + b y = gcd ⁡ ( a , b ) ax + by = \gcd(a, b) ax+by=gcd(a,b)的解递归反向推导系数,结合模运算回溯算法演进(19世纪后)

求逆元

费马小定理求逆元,模数需要是质数。扩展欧几里得求逆元只需 a 与 m 互质

在这里插入图片描述

证明

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

核心定理:对于任意整数 (a, b) ( a ≥ b ≥ 0 ) (a \geq b \geq 0) (ab0),有 gcd ⁡ ( a , b ) = gcd ⁡ ( b , a m o d b ) \gcd(a, b) = \gcd(b, a \bmod b) gcd(a,b)=gcd(b,amodb)
证明步骤

  1. 余数性质:设 (a = bq + r)(其中 r = a m o d b r = a \bmod b r=amodb),则 (a) 和 (b) 的公约数必然也是 (b) 和 (r) 的公约数,反之亦然。
    • d ∣ a d \mid a da d ∣ b d \mid b db,则 $ d \mid (a - bq) = r$。
    • d ∣ b d \mid b db d ∣ r d \mid r dr,则 $ d \mid (bq + r) = a$。
  2. 数学归纳法
    • 基例:当 (b = 0) 时,(\gcd(a, 0) = a),显然成立。
    • 归纳假设:假设对 (b < k) 时定理成立。
    • 归纳步骤:当 (b = k) 时,通过余数 (r = a \bmod b) 递归缩小问题规模,最终余数为零时,非零余数即为 GCD。
      应用场景:快速计算两个数的最大公约数,例如分数约分、素数检测等。

内容引用自:董晓 - 博客园

裴蜀定理



在这里插入图片描述

扩展欧几里得定理




在这里插入图片描述

  1. 求不定方程 a x + b y = g c d ( a , b ) ax+by=gcd(a,b) ax+by=gcda,b
  2. 求解同余方程
  3. 求解乘法逆元

时间复杂度:O(log n)

void exgcd(int a,int b)
{if(b==0){x=1,y=0;return ;}exgcd(b,a%b);int te=x;x=y;y=te-a/b*y;return ;
} 

题目运用

裴蜀定理

P4549 【模板】裴蜀定理 - 洛谷

img

代码
int a[N];
void solve()
{int n,s=0;cin>>n;fir(i,1,n)   {cin>>a[i];s=__gcd(s,abs(a[i]));}         cout<<s<<'\n';
}

扩展欧几里得

[P1082 NOIP 2012 提高组] 同余方程 - 洛谷

img

x%y= x-(x/y) * y

对 b 取模,可以看作 **+b y ** (y为负值)

所以式子可以转化为

ax+by=1

求 x 的解。

代码
int x,y,a,b;
void exgcd(int a,int b)
{if(b==0){x=1,y=0;return ;}exgcd(b,a%b);int te=x;x=y;y=te-a/b*y;return ;
}
void solve()
{cin>>a>>b;exgcd(a,b);x=(x%b+b)%b;cout<<x<<'\n';
}
P5656 【模板】二元一次不定方程 (exgcd)

题目:判断 ax+by =c 的解

  • c ! = gcd(a,b) 无解
  • 用加减 p , q 求通解
int a,b,c,x,y;
void exgcd(int a,int b)
{if(b==0){x=1,y=0;return;}exgcd(b,a%b);int t=x;x=y,y=t-a/b*y;return;
}
void solve()
{x=0,y=0;cin>>a>>b>>c;if(c%__gcd(a,b)!=0) cout<<"-1\n";else {exgcd(a,b);int d=a*x+b*y;//公因数x*=c/d,y*=c/d;//int p=b/d,q=a/d;if(x<=0){int k=(1-x+p-1)/p;x+=k*p;y-=k*q;}else {int k=(x-1)/p;x-=k*p;y+=k*q;}if(y<=0) {int k=(1-y+q-1)/q;y+=k*q;cout<<x<<' '<<y<<'\n';//x,y最小正整数解}else{cout<<(y-1)/q+1<<' ';        //y减到1的方案数为解的个数cout<<x<<' '<<(y-1)%q+1<<' ';//最小cout<<x+(y-1)/q*p<<' '<<y<<'\n';//最大}}   
}
http://www.dtcms.com/wzjs/285765.html

相关文章:

  • 怎样做机械租赁的网站常州网络推广哪家好
  • 邯郸做移动网站哪儿好百度网络推广
  • 网站建设 中企动力北京在线培训系统app
  • 免费b站推广网站动漫b站推广网站2024mmm
  • 优秀北京网站建设可以看封禁网站的浏览器
  • 网站改手机版谷歌seo是什么意思
  • 网站建设 青海怎么引流客源最好的方法
  • 郑州妇科哪一家医院好太原seo代理商
  • 个人网站允许做内部论坛吗电商培训机构哪家好
  • 南宁建设局网站网络推广的目标
  • 平度疫情最新进展独立站优化
  • 网站如何做水晶按钮制作一个网站需要多少费用
  • wordpress商城主题破解版广州seo网站
  • wordpress找不到cssseo公司上海牛巨微
  • 上海网站建设排行关键词提取
  • 正安网站建设seo的优点有哪些
  • 最好的网站开发工具搭建网站工具
  • 昆山建站公司杭州seo运营
  • 淘客免费网站建设互联网推广公司靠谱吗
  • 沈阳黑酷做网站建设优化公司怎么样还有哪些平台能免费营销产品
  • 商城网站建设流程seo学徒是做什么
  • 淘宝客做的最好的网站弹窗广告最多的网站
  • 网站系统制作教程视频教程论坛发帖
  • 网站解析网站发布
  • 东莞做一个企业网站要多少钱seo推广技术
  • 长治做网站的公司深圳企业网站制作公司
  • 广州的兼职网站建设网络营销平台名词解释
  • 政府网站建设规划品牌公关案例
  • 龙岩天宫山简介新乡seo外包
  • sql与网站开发seo优化软件大全