#include "bits/stdc++.h"
using namespace std;
#define ll long long
#define ld long double
#define IOS ios_base::sync_with_stdio(0);cin.tie(NULL);cout.tie(NULL);
#define mem(arr,val) memset(arr,val,sizeof(arr))
const int dirx[] = { 0,0,-1,1,1,-1,1,-1 };
const int diry[] = { 1,-1,0,0,1,1,-1,-1 };
const int N = 5e4 + 5;
const ll inf = 1e18;
const int mod = 1e9 + 7;
bool getbit(ll num, int idx) { return ((num >> idx) & 1); }
void set1(int& num, int idx) { num |= (1 << idx); }
void set0(int& num, int idx) { num &= (~(1 << idx)); }
ll gcd(ll a, ll b) { return b == 0 ? a : gcd(b, a % b); }
ll lcm(int a, int b) { return a / gcd(a, b) * b; }
ll p1, p2, t1, t2, h, s;
ll dp[N];
ll rec(ll i) {
if (i <= 0)return 0;
ll& ret = dp[i];
if (~ret)return ret;
ret = inf;
for (ll g = 0; g <= i; g++) {
ll time1 = g * t1;
ll second = time1 / t2;
ll use1 = g * (p1 - s);// use first g times
ll use2 = second * (p2 - s); // how many times will use second
ret = min(ret, rec(i - use1 - use2) + time1);
ll dmg = use1 + use2 + p1 + p2 - s; // intersect in last one
ll cost = max(time1 + t1, second * t2 + t2);
ret = min(ret, rec(i - dmg) + cost);
time1 = g * t2;
second = time1 / t1;
use1 = g * (p2 - s);
use2 = second * (p1 - s);
ret = min(ret, rec(i - use1 - use2) + time1);
dmg = use1 + use2 + p1 + p2 - s;
cost = max(time1 + t2, second * t1 + t1);
ret = min(ret, rec(i - dmg) + cost);
}
return ret;
}
int main() {
IOS;
cin >> p1 >> t1 >> p2 >> t2 >> h >> s;
mem(dp, -1);
cout << rec(h) << "\n";
}
1515E - Phoenix and Computers | 1552B - Running for Gold |
994A - Fingerprints | 1221C - Perfect Team |
1709C - Recover an RBS | 378A - Playing with Dice |
248B - Chilly Willy | 1709B - Also Try Minecraft |
1418A - Buying Torches | 131C - The World is a Theatre |
1696A - NIT orz | 1178D - Prime Graph |
1711D - Rain | 534A - Exam |
1472A - Cards for Friends | 315A - Sereja and Bottles |
1697C - awoo's Favorite Problem | 165A - Supercentral Point |
1493A - Anti-knapsack | 1493B - Planet Lapituletti |
747B - Mammoth's Genome Decoding | 1591C - Minimize Distance |
1182B - Plus from Picture | 1674B - Dictionary |
1426C - Increase and Copy | 520C - DNA Alignment |
767A - Snacktower | 1365A - Matrix Game |
714B - Filya and Homework | 31A - Worms Evolution |