1. 程式人生 > >中國剩余定理【數論】

中國剩余定理【數論】

pac spa position amp 1.2 man detail for vertical

今有物不知其數,三三數之剩二,五五數之剩三,七七數之剩二。問物幾何?

https://www.cnblogs.com/freinds/p/6388992.html https://blog.csdn.net/niiick/article/details/80229217 技術分享圖片 技術分享圖片

void exgcd(int a,int b,int &x,int &y)
{
    if(b==0){ x=1; y=0; return;}
    exgcd(b,a%b,x,y);
    int tp=x;
    x=y; y=tp-a/b*y;
}

int china()
{
    int ans=0
,lcm=1,x,y; for(int i=1;i<=k;++i) lcm*=b[i]; for(int i=1;i<=k;++i) { int tp=lcm/b[i]; exgcd(tp,b[i],x,y); x=(x%b[i]+b[i])%b[i];//x要為最小非負整數解 ans=(ans+tp*x*a[i])%lcm; } return (ans+lcm)%lcm; }


中國剩余定理【數論】