#include using namespace std; using ll = long long; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); ll T, X, A, Y, B; cin >> T; cin >> X >> A; cin >> Y >> B; ll g = gcd(A, B); const ll INF = (1LL << 62); ll ans = INF; if (T > 0) { ll lim = A / g; for (ll p = 0; p < lim; p++) { ll f = (T + B * p) / A; ll cost = T + (Y + B) * p - (A - X) * f; ans = min(ans, cost); } } else { ll lim = B / g; for (ll f = 0; f < lim; f++) { ll need = A * f - T; // T < 0 なので need > 0 ll p = (need + B - 1) / B; // ceil(need / B) ll cost = T + (X - A) * f + (Y + B) * p; ans = min(ans, cost); } } cout << ans << '\n'; return 0; }