*转载于该题题解
#include<iostream>
#include<algorithm>
using namespace std;
struct pig{
int a1,b1;
}a[11];//定义结构体存储a与b
int gcd(int x,int y){//公约数函数,用来求每一次循环累加的值
if(x%y==0) return y;
else return gcd(y,x%y);
}
int main(){
long long n,ans,sum=1;//数据较大用longlong
cin>>n;
for(int i=1;i<=n;++i){
cin>>a[i].a1>>a[i].b1;
}
ans=a[1].b1;//初始化最小值
for(int i=1;i<n;++i){//开始循环
sum=sum*a[i].a1/gcd(sum,a[i].a1);//sum为累加的值
while(ans%a[i+1].a1!=a[i+1].b1){//循环条件
ans+=sum;
}
}
cout<<ans;
return 0;
}
关注一下吧!!!求求了!!!我将立即会关!!!