码迷,mamicode.com
首页 >  
搜索关键字:gcd    ( 4539个结果
poj 1061 同余方程+扩展欧几里得+(求最小非负整数解)
题目可以转化成求关于t的同余方程的最小非负数解:x+m*t≡y+n*t (mod L)该方程又可以转化成:k*L+(n-m)*t=x-y利用扩展欧几里得可以解决这个问题:eg:对于方程ax+by=c设tm=gcd(a,b)若c%tm!=0,则该方程无整数解。否则,列出方程:a*x0+b*y0=tm易...
分类:其他好文   时间:2014-11-01 19:10:39    阅读次数:206
【数论】【筛法求素数】【欧拉函数】bzoj2818 Gcd
gcd(x,y)(1 gcd(x/k,y/k)=1,k是x的质因数 的个数 Σφ(x/k) (1 2 using namespace std; 3 typedef long long ll; 4 int phi[10000001],n; 5 bool unPrime[10000001]; 6 ll ...
分类:其他好文   时间:2014-11-01 18:59:33    阅读次数:164
Uva 10325 The Lottery ( 容斥原理 )
Uva 10325 The Lottery ( 容斥原理 )#include #include typedef long long LL;LL x[20],n, m;LL gcd( LL a, LL b ){ return ( b == 0 ) ? a : gcd( b, a % b );}L...
分类:其他好文   时间:2014-11-01 17:27:35    阅读次数:153
【数论】【枚举约数】【欧拉函数】bzoj2705 [SDOI2012]Longge的问题
∵∑gcd(i, N)(1 gcd(x/ki,N/ki)=1 (1 2 #include 3 using namespace std; 4 typedef long long ll; 5 ll n,ans; 6 int phi(ll x) 7 { 8 ll res=x; 9 for(...
分类:其他好文   时间:2014-11-01 16:15:10    阅读次数:186
poj 2409 polya定理
#include #include #include #include using namespace std; typedef long long LL; int gcd(int x,int y){ return y ? gcd(y,x%y) : x; } int main() { int n,m; LL ans; while(scanf("%d%d",&m,...
分类:其他好文   时间:2014-11-01 14:52:47    阅读次数:188
模方程
对于 ax≡b( mod n ) 转化为 ax - ny = b , 当 d = gcd( a, n ) 不是 d 的约数的时候不存在解,为何不存在解呢?设 a = k1*d , n = k2*d .那么式子可转化为 : d * (k1*x - k2*y) = b , 若 b % d != 0 .....
分类:其他好文   时间:2014-11-01 00:56:12    阅读次数:254
辗转相除法与扩展欧几里得
辗转相除法:求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 } ...
分类:其他好文   时间:2014-10-31 21:52:11    阅读次数:147
线性求欧拉函数值和筛选素数
2818: Gcd   题目:   给定整数N,求1 数对(x,y)有多少对. 1   算法:    求解 g = Gcd(x,y)为素数,转换问题成x/g,y/g互质。所以,只要求出[1,N/pi]内互质的对数(pi为1....N之间的素数)。枚举pi就可以了。而这里就可以用到线性的欧拉求解,普通欧拉为O(nlognlogn)。   /* 线性素数加欧拉筛法O(N) 题目:...
分类:其他好文   时间:2014-10-31 20:45:54    阅读次数:184
求解最大公约数——欧几里得算法及其(解同余方程)拓展
求关于 x 的同余方程 ax ≡ 1 (mod b)的最小正整数解。 最大公约数的求法中最过著名的莫过于欧几里得辗展相除法,它有两种形式(递归与非递归,其实是一样的,任何递归都可以写成非递归)...
分类:编程语言   时间:2014-10-31 15:49:21    阅读次数:373
欧几里得算法与扩展欧几里得算法
欧几里得算法基于这样一个 GCD 递归定理:$gcd(a, b) = gcd(b, a\bmod{b}) $证明如下:假设 $a > b$, $a = kb + r(0 0$ 时, 假设我们已经求得了方程 $bx + (a\bmod{b})y = gcd(b, a\bmod{b})$ 的一组解 $....
分类:编程语言   时间:2014-10-31 15:22:41    阅读次数:279
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!