二元不定方程,就是形同ax+by=c的二元方程, 只不过有无数组解罢了。 还有原谅我蒟蒻,不会用字母的写法,只好直觉+小学数学写法了 我们可以使用辗转相除法来解决(过渡好生硬啊) 我们首先来看一组例子 为了方便理解,特将每个多项式系数都写了出来,同时并没有将符号带进括号 那怎么求出其他的特值捏? 对 ...
分类:
其他好文 时间:
2018-03-02 20:49:04
阅读次数:
201
在讲解扩展欧几里得之前我们先回顾下辗转相除法: $gcd(a,b)=gcd(b,a\%b)$当$a\%b==0$的时候b即为所求最大公约数 好了切入正题: 简单地来说exgcd函数求解的是$ax+by=gcd(a,b)$的最小正整数解。根据数论的相关知识,一定存在一组解$x,y$使得$ax+by=g ...
分类:
编程语言 时间:
2018-02-28 18:31:52
阅读次数:
184
#include<iostream>#include<cstdio>using namespace std;int gcd(int a,int b){ return b==0?a:gcd(b,a%b);}void read(){ freopen("gcd.in","r",stdin); freope ...
分类:
编程语言 时间:
2018-02-26 18:58:37
阅读次数:
162
1. 求两个数的最大公约数(似乎有个辗转相除法,为什么不用呢,没错,我不会) 示例: 输入:24,18 输出:6 2.输入一组英文单词,按字典顺序(不区分大小写)排序输出。(这个是在网上抄的,不会。。) 示例: 输入:Information Info Inform info Suite suite ...
分类:
其他好文 时间:
2018-02-18 14:14:12
阅读次数:
197
一 欧几里得辗转相除法算法 设a=qb+r,其中a,b,q,r都是整数,则gcd(a,b)=gcd(b,r),又因 r = a mod b,所以 gcd(a,b)=gcd(b,a mod b)。 证明:①证明充分性。 设 d 为 a,b 的公约数,记作 d|a , d|b ,即a和b都可以被d整除 ...
分类:
编程语言 时间:
2018-02-18 00:22:32
阅读次数:
247
浅谈关于欧几里得的一系列算法 这里有个叫分界线的家伙说,本章的所有讨论均在整数的范围中,所有除法都为带余除法o 朴素欧几里得算法 又名辗转相除法,代码实现如下: 想一想为什么可以这样计算? 我们设 $a=k_1m, \ b=k_2m \ ,gcd(a,b)=m,\ gcd(k_1,k_2)=1$ 很 ...
分类:
编程语言 时间:
2018-02-07 22:50:35
阅读次数:
211
1、GCD 辗转相除法: 2、扩展欧几里得算法 由贝祖等式可知ax+by=gcd(a,b) 。(由此可推一般式: ax+by=d) 如果要解x , y 。由数学推导可知: 1、当b=0 时可知x=1,y=0。 2、当b!=0时,a*x1+b*y1=gcd(a,b), b*x2+(a%b)*y2=gc ...
分类:
其他好文 时间:
2018-02-02 00:46:30
阅读次数:
184
求最大公约数采用辗转相除法 求最小公倍数 = 最大公约数 * (A/最大公约数)*(B/最大公约数) ...
分类:
其他好文 时间:
2018-02-01 00:06:35
阅读次数:
244
Preface 对于许多数论问题,都需要涉及到Gcd,求解Gcd,常常使用欧几里得算法。 对于许多求解问题,可以列出贝祖方程:ax+by=Gcd(a,b),用Exgcd解之即可到答案,Exgcd即扩展欧几里得算法。 这里是对于两个算法的学习小记 Content 欧几里得算法 由百度百科得 欧几里德算 ...
分类:
编程语言 时间:
2018-01-28 21:59:13
阅读次数:
197