지하철
면접 대비시간 제한2초메모리 제한1024 MB
잔액이 a_i인 카드 n장에 추가 금액 p를 나눠 넣을 때, 요금 k로 탈 수 있는 최대 승차 횟수를 구합니다.
문제
파프누티는 목적지에 가려고 지하철을 이용하고 싶어 한다.
개찰구를 통과하려면 특수 카드 SLON(Subterranean Lowcost Orientational Network)을 써야 한다. 각 카드에는 0 이상의 정수 잔액이 있으며, 이는 카드에 기록된 부리의 개수다. 잔액이 최소 부리 이상이면 개찰구를 통과할 수 있고, 통과하면 잔액이 부리 줄어든다. 잔액이 부리보다 적으면 그 카드로는 통과할 수 없다.
처음에 파프누티는 장의 카드를 가지고 있고, 번째 카드의 잔액은 부리다. 또 그는 부리를 모아 두었고, 이 돈을 카드들에 자유롭게 나눌 수 있다. 형식적으로, 번째 카드에 부리를 더한다면 를 만족해야 한다. 카드 사이에서 돈을 옮길 수는 없다. 카드 잔액은 이 부리의 일부로만 늘어나고, 개찰구를 통과할 때만 줄어든다.
파프누티가 부리를 최적으로 나눴을 때 지하철을 최대 몇 번 탈 수 있는지 구하라.
입력
첫 줄에 세 정수 , , 가 주어진다 (, , ). 각각 카드의 개수, 모아 둔 돈, 한 번 통과할 때의 요금이다.
둘째 줄에 개의 정수 이 주어진다 (). 각 카드의 잔액이다.
출력
파프누티가 지하철을 최대 몇 번 탈 수 있는지 나타내는 정수 하나를 출력한다.
힌트
첫 번째 예제에서 처음에는 3번만 탈 수 있다. 그러나 첫 번째, 두 번째, 세 번째 카드 중 하나에 1부리를 더하면 4번 탈 수 있다.
두 번째 예제에서 1000부리는 두 카드의 잔액을 모두 2000부리로 맞추기에만 충분하다.