裴蜀定理(或 贝祖定理 )

裴蜀定理指出,对于任何整数a、b和它们的最大公约数d,存在整数x、y使得ax+by=d。此定理可以推广,保证存在整数解使得ax+by=gcd(a,b)×n。文章通过一个编程例题展示了裴蜀定理在求解最大公约数问题中的应用。
摘要由CSDN通过智能技术生成

裴蜀定理(或 贝祖定理 ),说明了对任何 整数 a、b和它们的 最大公约数 d,关于 未知数 x和y的线性不定方程(称为裴蜀等式):若a,b是整数,且 gcd (a,b)=d,那么对于任意的整数x,y,ax+by都一定是d的倍数,特别地,一定存在整数x,y,使ax+by=d成立。

简单来说:一定存在整数x,y,满足ax+by=gcd(a,b)

关于裴蜀定理的证明,这里就直接传送门了裴蜀定理的证明 - 知乎 (zhihu.com)

裴蜀定理推广

一定存在整数x,y,满足ax+by=gcd(a,b)×n

裴蜀定理再推广

一定存在整数X_{1}...X_{i},满足\sum_{i=1}^{n}A_{i}\times X_{i}=gcd(A_{1},A_{2},A_{3},...,A{n})

例题:P4549 【模板】裴蜀定理 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

思路直接来自裴蜀定理的推广,代码如下:

#include <bits/stdc++.h>
using namespace std;
int main(){
  int  n;
  cin >> n;
  int ans;
  cin >> ans;
  for(int i = 1; i < n; i++){
    int x;
    cin >> x;
    ans = __gcd(ans, abs(x)); 
  }
  cout << ans << "\n";
  return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值