//拓欧
void exgcd(long long a,long long b,long long &x,long long &y)
{
if(b == 0)
{
x = 1;
d = a;
y = 0;
return ;
}
else
{
long long x0, y0;
exgcd(b, a%b, x0, y0);
x = y0;
y = x0 - (a/b) * y0;
}
}
long long inverse(long long a,long long b)
{
long long x = 0, y = 0;
exgcd(a,b,x,y);
return (x % b + b) %b;
}//此处为中国剩余定理里面的。
费马
long long mpow(int a,int b,int modd)
{
int rt = 1;
for( ; b; b >>= 1, a = (1ll * a * a)% modd)
{
if(b&1) rt = (1ll * rt * a) % modd;
}
return rt;
}
int ici = mpow(ci, mod[i] - 2, mod[i]);
a*x≡1(mod p)
a*x + p*y = 1;