공항에 M명의 사람이 N개의 데스크에서 체크인을 하려고 기다리고 있습니다. 처음에는 모든 데스크가 비어있습니다. 직원들이 준비가 끝나면 승객들이 체크인을 할 수 있는데 각 데스크는 한 번에 한 명씩만 처리할 수 있습니다. 줄의 맨 앞에 서있는 사람은 비어 있는 데스크에 가서 체크인을 시작할 수 있습니다. 그러나 이미 사람이 있는 데스크의 처리 속도가 더 빠르다면 비어있는 곳 대신 그 데스크 뒤에서 대기하고 있을 수도 있습니다. 첫번째 예제를 예로 들자면 앞 두 사람이 두 데스크에서 체크인을 시작 시간 7에 첫 번째 데스크 사람이 체크인 끝, 세 번째 사람이 체크인 시작 시간 10에 두 번째 데스크 사람이 체크인 끝, 네 번째 사람이 체크인 시작 시간 14에 첫 번째 데스크 사람이 체크인 끝, 다섯 번째 사람이 체크인 시작 시간 20에 두 번째 데스크 사람이 체크인 끝, 시간 21에 첫 번째 데스크 사람이 체크인 끝, 여섯 번째 사람이 체크인 시작 시간 28에 첫 번째 데스크 사람이 체크인 끝으로 28초에 모든 일을 끝낼 수 있습니다. 시간 20에 마지막 사람이 두 번째 데스크로 갔다면 30초가 되어 더 많은 시간이 듭니다.
사람 수, 데스크 수, 직원들의 처리 속도가 주어졌을 때 모든 사람이 최대한 빨리 체크인을 끝낼 수 있는 시간을 출력하세요.
In the beginning, all desks are ready to accept the next passenger, and the delegation members are the only people in the queue. A person can only occupy (start check-in at) an available desk when all people in front of that person in the queue have left the queue (started, not necessarily finished, check-in) already. At that moment, the person can immediately occupy an available desk (if there is one), but can also choose to wait for another (faster) desk to become available. Our delegation members, being computer science geeks, make this decision in such a way that the moment when all of them have finished check-in is as soon as possible. Your task is finding that moment in time.
Let us describe the scenario from the first example below. There are two desks, with processing times of 7 and 10 seconds, respectively. Out of the six people in the delegation, the first two immediately occupy the two desks. At time 7, the first desk is freed, and the third person occupies it. At time 10, the fourth person occupies the second desk. At time 14, the fifth person occupies the first desk. At time 20, the second desk is freed again, but the sixth person decides to wait another second (time 21) for the first desk to become available, and then occupy it. This way, the check-in is completed by time 28. If the sixth person hadn't waited for the faster desk, the check-in would have taken a total of 30 seconds.
input 2 6 7 10 output 28 input 7 10 3 8 3 6 9 2 4 output 8
출처:coci/2012-2013/contest3/4 번 요약:ladown21