C. Lucky Days code /*SiberianSquirrel*/ /*CuteKiloFish*/ #include<bits/stdc++.h> using namespace std; typedef long long ll; const double PI = acos(-1), eps = 1e-8; /*const int MOD = 998244353, r = 119, k = 23, g = 3; const int MOD = 1004535809, r = 479, k = 21, g = 3;*/ const int INF = 0x3f3f3f3f, MOD = 1e9 + 7; const int M = 2e6 + 10, N = 2e5 + 10; int sgn(double x) { if(fabs(x) < eps) return 0; return x < 0? -1: 1; } //inline int rnd(){static int seed=2333;return seed=(((seed*666666ll+20050818)%998244353)^1000000007)%1004535809;} //double Rand() {return (double)rand() / RAND_MAX;} struct node { int l, r, t; }a, b; int _gcd; void init() { } void solve() { int res = 0; int t = (a.l - b.l)/_gcd; b.l += t * _gcd, b.r += t * _gcd; res = min(b.r - a.l + 1, a.r - a.l + 1); b.l += _gcd, b.r += _gcd; res = max(res, min(b.r - b.l + 1, a.r - b.l + 1)); cout << (res >= 0? res: 0) << endl; } int main() { ios::sync_with_stdio(false);cin.tie(0);cout.tie(nullptr); // srand(time(0)); #ifdef ACM_LOCAL freopen("input", "r", stdin); freopen("output", "w", stdout); #endif init(); int o = 1; // cin >> o; while(o --) { cin >> a.l >> a.r >> a.t; cin >> b.l >> b.r >> b.t; if(a.l < b.l) swap(a, b); _gcd = __gcd(a.t, b.t); solve(); } return 0; }