你拿一下~~本蒟蒻~~对拍一下
```cpp
#include<bits/stdc++.h>
using namespace std ;
long long x=0 , y=0 ;
long long f(long long a,long long b,long long &x,long long &y) {
if(b == 0) {
x = 1, y = 0;
return a;
}
long long d = f(b, a % b, x, y), t = x;
x = y, y = t - a / b * x;
return d;
}
long long sum=0 , n , mod[1123] , a[1231] , M=1 ;
int main() {
cin >> n ;
for(int i=1; i<=n; i++) {
cin >> mod[i] >> a[i] ;
M *= mod[i] ;
}
for(int i=1; i<=n; i++) {
x = 0 , y = 0 ;
f(M/mod[i],mod[i],x,y);
if(x<0) x += mod[i] ;
sum += a[i]*x%mod[i]*(M/mod[i]) ;
}
cout << sum%M ;
return 0;
}
```
by lao_wang @ 2023-11-02 16:57:24
@[M_and_P_](/user/68960)
by lao_wang @ 2023-11-02 16:57:49
测试了一下,好像多模几次M就行了
by melting_moon @ 2023-11-03 16:52:17