t = int(input()) x,a = map(int,input().split()) y,b = map(int,input().split()) ans = 10 ** 15 if t >= 0: cnt = 0 while cnt * a <= 2*10**7: if cnt * a <= t: ans = min(ans,x*cnt + t-a * cnt) else: # print(a*cnt,-((-(a*cnt-t))//b)) ans = min(ans,x*cnt + (-((-(a*cnt-t))//b)) * y + t - (a*cnt - (-((-(a*cnt-t))//b)) * b)) cnt += 1 else: cnt = 0 b *= -1 while cnt * b >= - 2*10**7: if cnt * b <= t: p_ans = ans ans = min(ans,y * cnt + ((t - b*cnt)//a) * x + t - (cnt * b + ((t - b*cnt)//a) * a)) if p_ans != ans: print(cnt,ans,y * cnt , ((t - b*cnt)//a) * x , t - (cnt * b + ((t - b*cnt)//a) * a)) cnt += 1 print(ans)