ez_code   2년 전

문제

생산 라인에 기계 두 대가 있습니다. 오늘의 근무 k분 동안 최대한 많은 부품을 생산해야 합니다.

기계는 현재 시동이 꺼진 상태입니다. 첫 번째 기계의 시동을 거는 데는 a분이 걸리고, 시동이 걸리면 첫 번째 기계는 분 당 x개의 부품을 생산합니다. 두 번째 기계의 시동을 거는 데는 b분이 걸리고, 시동이 걸리면 두 번째 기계는 분 당 y개의 부품을 생산합니다.

기계를 작동하려면 기술자가 있어야 하므로 두 기계 시동을 동시에 걸 수는 없습니다. 한 기계의 시동을 거는 동안 다른 기계에서 부품을 생산하거나, 두 기계에서 동시에 부품을 생산하는 것은 가능합니다.

k분 동안 생산 가능한 부품의 최대 개수를 찾아야 합니다.

입력

첫 줄에 근무 시간을 나타내는 음이 아닌 정수 k가 주어집니다. (0 <= k <= 10 ^ 9)

둘째 줄에 첫 번째 기계의 시동을 거는 데 걸리는 시간과 분 당 기계가 생산하는 부품의 수인 음이 아닌 정수 a와 x가 주어집니다. (0 <= a, x <= 10 ^ 9)

셋째 줄에 두 번째 기계의 시동을 거는 데 걸리는 시간과 분 당 기계가 생산하는 부품의 수인 음이 아닌 정수 b와 y가 주어집니다. (0 <= b, y <= 10 ^ 9)

출력

근무 시간 동안 생산할 수 있는 최대 부품의 수를 나타내는 하나의 수를 출력합니다.

이 문제의 답이 커 32-bit 자료형에 맞지 않을 수 있음에 유의합시다. C++의 <<\mbox{long long}>>이나 Pascal의 <<int64>> 등 64-bit 자료형을  사용하는 것을 권장합니다.

tnsgh9603   2년 전

번역 감사합니다:)

음수가 출력되는 경우를 생각 못했네요:)

댓글을 작성하려면 로그인해야 합니다.