题目Two Arithmetic Progressions
我的代码
#include<cstdio>
#include<iostream>
#include<cmath>
#include<algorithm>
#define ll long long
using namespace std;
ll a1,b1,a2,b2,l,r,i,k,ans;
int main(){
cin>>a1>>b1>>a2>>b2>>l>>r;
l=max(l,max(b1,b2));
if(a1>a2)swap(a1,a2),swap(b1,b2);
if(a2<1000){
for(i=l;i<=min(l+a1*a2-1,r);i++)
if((i-b1)%a1==0&&(i-b2)%a2==0)
ans+=(r-i)/(a1*a2)+1;
}
else{
for(int i=b2;i<=r;i+=a2){
if(i>=l){
if((i-b1)%a1==0) ans++;
}
}
}
cout<<ans<<endl;
return 0;
}
我真的不知道哪里错了
救命