당신은 조명 기구를 만드는 작은 회사의 사장이며, 직원 n명을 두고 있습니다. 일이 필요할 때마다 사내 방송으로 "do it!"이라고 외치는 습관이 생겼습니다. 직원 중 n+명은 이 외침에 긍정적으로 반응하고, n−명은 부정적으로 반응하며, 나머지 n0명은 아무런 영향을 받지 않습니다.
시각 0에 모든 직원이 각자 자신의 조명 기구 하나를 만들기 시작합니다. 조명 기구 하나를 완성하려면 노동량 100이 필요합니다. 평소에 각 직원은 한 단위 시간마다 노동량 r만큼(남은 노동량이 그보다 작으면 남은 만큼) 기여하므로, 보통은 조명 기구 하나를 완성하는 데 ⌈100/r⌉단위 시간이 걸립니다.
그러나 어떤 단위 시간 동안 당신이 사내 방송으로 "do it!"을 외치면, 그 단위 시간 동안 긍정적으로 반응하는 직원은 r+2만큼, 부정적으로 반응하는 직원은 r−1만큼 일합니다. 영향을 받지 않는 직원은 언제나 r만큼 일합니다.
각 직원은 오직 자신의 조명 기구만 만들고, 당신은 한 단위 시간에 "do it!"을 최대 한 번만 외칠 수 있습니다. 모든 n개의 조명 기구가 완성되기까지 걸린 시간의 합이 최소가 되도록 "do it!"을 외치는 순서를 계획하는 것이 목표입니다.
입력은 여러 개의 테스트 케이스로 이루어집니다. 각 테스트 케이스는 네 정수 n+, n−, n0, r가 공백으로 구분되어 한 줄에 주어집니다 (0≤n+,n−,n0≤1000, 1≤r≤100). 입력의 끝은 n+=n−=n0=r=0인 줄로 표시되며, 이 줄은 처리하지 않습니다.
각 테스트 케이스마다 모든 n개의 조명 기구를 완성하는 데 필요한 시간의 최소 합을 한 줄에 하나씩 출력합니다.
첫 번째 예제 (3 1 1 2)에서 한 가지 최적 전략은 처음 25단위 시간 동안 매번 "do it!"을 외치는 것입니다. 그러면 긍정적으로 반응하는 직원 3명은 단위 시간마다 노동량 4를 기여하여 25단위 시간 만에 완성합니다. 부정적으로 반응하는 직원 1명은 처음 25단위 시간 동안 단위 시간마다 노동량 1을, 그 이후에는 2를 기여하여 25+38=63에 완성합니다. 영향을 받지 않는 직원은 항상 노동량 2를 기여하여 50에 완성합니다. 따라서 합은 3×25+63+50=188입니다.
두 번째 예제 (1 3 0 2)에서 최적 전략은 "do it!"을 한 번도 외치지 않는 것입니다. 그러면 네 직원 모두 50에 완성하므로 합은 200입니다.