首页 > 代码库 > 辗转相除法与扩展欧几里得
辗转相除法与扩展欧几里得
辗转相除法:求gcd(a,b)
扩展欧几里得:解关于x和y的方程:a*x+b*y=gcd(a,b)
1 int gcd(int a,int b){ 2 if (b==0) return a; 3 return gcd(b,a%b); 4 } 5 6 7 ------------------------------------------------ 8 9 10 int extgcd(int a,int b,int& x,int& y){ 11 int d=a; 12 if (b!=0){ 13 d=extgcd(b,a%b,y,x); 14 y-=(a/b)*x; 15 }else{ 16 x=1;y=0; 17 } 18 return d; 19 }
辗转相除法与扩展欧几里得
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。