Informatica Online Judge

  최소 여행비 [1141 / 0475]

Time Limit(Test case) : 1000(ms)
Number of users who solved : 63   Total Tried : 148


The Champion of this Problem (C++) : gs18090 - ms / 197byte
My Best Submission (C++) : N/A

[Codeforces]

Background

경곽이는 최근 지하철을 이용한 여행을 하기로 했다.

경곽이는 지하철을 한 번 탈 수 있는 표가 a원이라는 사실을 알았다.

그런데 특별한 표가 있다는 사실을 알게되었다. 이 표는 지하철을 m번 탈 수 있으며, 가격은 b원이다.

물론 a원짜리와 b원짜리 표를 여러 개 살 수 있다.

경곽이가 n번 지하철을 타려고 할 때, a원짜리와 b원짜리 표를 적절히 살 수 있다. 이 때 드는 최소비용을 구하는 프로그램을 작성하시오.

Input

첫 번째 줄에 n, m, a, b 가 공백으로 구분되어 입력된다.

[입력값의 정의역]
1 <= n, m, a, b <= 1,000

Output

n번 타는데 드는 최소비용을 출력한다.

IO Example

입력
6 2 1 2

출력
6

입력2
5 2 2 3

출력2
8

*설명 : 첫 번째 케이스의 경우에는 1원짜리 6개 혹은 2원짜리 3개를 사서 6원으로 6번을 탈 수 있다. 두 번째 케이스의 경우에는 3원짜리 2개 2원짜리 1개를 사면 원으로 5번을 탈 수 있다.

Submit : [C/C++] | [C++11] | [Obj-C] | [Java] | [Python]
Prob Analysis : [Problem Statistics] | [Solution]