软陶
#include<iostream>
#define int long long
using namespace std;
int a[15],b[15];
int x,y,n,ans,p=1;
int ksc(int x,int y,int p)
{
int L=x*(y>>25)%p*(1<<25)%p;
int R=x*(y&((1<<25)-1))%p;
return (L+R)%p;
}
void exgcd(int xx,int yy)
{
if(yy==0)
{
x=1;
y=0;
return;
}
exgcd(yy,xx%yy);
int t=x;
x=y; y=t-xx/yy*y;
}
signed main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>b[i];
for(int i=1;i<=n;i++)
cin>>a[i],p*=a[i];
for(int i=1;i<=n;i++)
{
exgcd(p/a[i],a[i]);
x=(x%a[i]+a[i])%a[i];
ans=ans+ksc(ksc(p/a[i],x,p),b[i],p);
ans%=p;
}
cout<<(ans+p)%p;
return 0;
}