中国剩余定理

来源:互联网 发布:数据线带磁环的作用 编辑:程序博客网 时间:2024/04/29 12:46

中国剩余定理模版

转自Danliwoo的博客

//求解x = ai(mod mi)方程组int extend_euclid(int a,int b,int &x,int &y){    if(!b)    {        x = 1;        y = 0;        return a;    }    int d = extend_euclid(b,a%b,x,y);    int t = x;    x = y;    y = t - a / b * y;    return d;}int China(int r){    int M = 1, ans = 0;    for (int i = 0; i < r; ++i)        M *= m[i];    for(int i = 0;i < r;i++)    {        int N = M/m[i];        int x, y;        extend_euclid(N, m[i], x, y);        ans = (ans+a[i]*N*x)%M;    }    ans = (ans - a[r])%M;    return (ans+M)%M;}
0 0
原创粉丝点击