#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll m[15],a[15];
ll f(ll a,ll b,ll &x,ll &y){
if(b==0){
x=1;y=0;return a;
}ll d=f(b,a%b,y,x);
y-=(a/b)*x;
return d;
}
int main(){
ll n;cin>>n;
for(int i=1;i<=n;i++)cin>>m[i]>>a[i];
ll M=1;
for(int i=1;i<=n;i++)M*=m[i];
ll ans=0;
for(int i=1;i<=n;i++){
ll x,y,MM=M/m[i];
f(MM,m[i],x,y);
ans=(ans+a[i]*MM%M*x)%M;
}ans=(ans+M)%M;
cout<<ans;
return 0;
}
大佬求助,为什么WA了一个点!!!但是100
看数据范围也不会爆long long