int China(int *w,int *m,int n)// w[]是余数数租, m[] 是模数数租
{
int lcm=1,ans=0;for (int i=1;i<=n;i++) lcm*=m[i];//计算所有mod的lcm
for (int i=1;i<=n;i++)
{
int x,y,M=lcm/m[i];exgcd(M,m[i],x,y);// 求用exgcd求M的逆元
ans=(ans+x*M*w[i])%lcm;
}
return (ans+lcm)%lcm;
}
数论14——中国剩余定理(模板)
最新推荐文章于 2022-12-27 20:25:30 发布