오버킬

면접 대비

시간 제한0.5초메모리 제한1024 MB

요약
매 턴 살아있는 첫 몬스터에게 D만큼 피해를 주고, 오버킬 피해는 다음 몬스터 한 마리에게만 이어지는 전투를 시뮬레이션한다.
난이도

쉬움10점 중 3점

유형
시뮬레이션, 구현, 배열, 수학
정답자
아직 제출이 없습니다

문제

cologne는 Trimps라는 게임을 하고 있다. 이 게임에는 NN마리의 몬스터가 차례대로 있다. ii번째 몬스터의 현재 체력은 A_iA\_i이다. 몬스터에게 xx만큼의 대미지를 주면 몬스터의 체력이 xx만큼 줄어들고, 이로 인해 체력이 00 이하가 되면 몬스터가 죽게 된다.

cologne의 목표는 전투를 통해 모든 몬스터를 죽이는 것이다. 전투는 여러 개의 턴으로 이루어져 있으며 각 턴은 다음과 구성된다.

  1. 체력이 00 초과인 가장 첫 몬스터를 찾아서 DD만큼 대미지를 준다.

  2. 대미지를 준 몬스터의 체력이 00 미만인 −h-h인 경우 오버킬이 일어난다. 오버킬은 다음과 같은 방법으로 처리된다.

    • 대미지를 준 몬스터의 다음 몬스터가 존재하지 않을 경우, 턴을 종료한다.
    • 대미지를 준 몬스터의 다음 몬스터가 존재할 경우, 다음 몬스터에게 hh의 pp퍼센트를 소숫점 첫째자리에서 버림한 만큼의 대미지를 준다.

모든 몬스터를 죽이기 위해서는 몇 턴이 필요할까?

입력

첫 줄에 몬스터의 수 NN, 기본 대미지 DD와 오버킬 비율 pp가 공백으로 구분되어 주어진다. (1≤N,D,p≤100)(1 \le N, D, p \le 100)

다음 NN개의 줄에는 각 몬스터의 체력 A_1,A_2,⋯ ,A_NA\_1, A\_2, \cdots, A\_N이 공백으로 구분되어 주어진다. (1≤A_i≤100)(1 \le A\_i \le 100)

주어지는 모든 수는 정수이다.

출력

모든 몬스터를 죽이기 위해 필요한 턴 수를 출력하여라.

힌트

오버킬은 한 번만 이루어진다. 즉, 한 턴에 세 마리 이상의 몬스터에게 대미지를 줄 수는 없다.

예제1

  1. 예제 1

    입력
    7 20 15
    30 21 1 2 30 22 3
    
    예상 출력
    9