首页 > 代码库 > 基本数论算法
基本数论算法
dalao博客,至少很好看。。
因为本人数论实在渣渣,但是考试确是得考的,只好尽早学,尽早掌握。
最大公因数
普通gcd
1 inline int gcd(int x,int y)2 {3 return y == 0 ? x : gcd(y, x % y)4 }
二进制优化gcd
1 inline int bsgcd(int x, int y)2 {3 if(x == y) return x;4 if(x < y) x ^= y ^= x ^= y;5 if(!(x & 1)) //x偶 y偶 gcd(x,y)=2*gcd(x/2,y/2),x偶 y奇 gcd(x,y)=gcd(x/2,y)6 return (!(y & 1)) ? 2 * bsgcd(x >> 1, y >> 1) : bsgcd(x >> 1, y);7 //x奇 y偶 gcd(x, y)=gcd(x,y/2)8 return (!(y & 1)) ? bsgcd(x, y >> 1) : bsgcd(y, x - y); 9 }
基本数论算法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。