def main(): import sys input = sys.stdin.read().split() T = int(input[0]) X = int(input[1]) A = int(input[2]) Y = int(input[3]) B = int(input[4]) a_max = 200000 # Adjust this value if needed min_cost = float('inf') for a in range(0, a_max + 1): if A == 0: aa = 0 else: aa = a * A if aa > T: needed = aa - T if B == 0: b_min = 0 else: b_min = (needed + B - 1) // B else: b_min = 0 w = T - aa + b_min * B if w < 0: continue cost = a * X + b_min * Y + w if cost < min_cost: min_cost = cost # Additional cases for T negative to ensure coverage if T < 0: a = 0 aa = 0 if aa > T: needed = aa - T if B == 0: b_min = 0 else: b_min = (needed + B - 1) // B else: b_min = 0 w = T - aa + b_min * B if w >= 0: cost = a * X + b_min * Y + w if cost < min_cost: min_cost = cost a = 1 aa = A if aa > T: needed = aa - T if B == 0: b_min = 0 else: b_min = (needed + B - 1) // B else: b_min = 0 w = T - aa + b_min * B if w >= 0: cost = a * X + b_min * Y + w if cost < min_cost: min_cost = cost print(min_cost) if __name__ == '__main__': main()