| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 2 초 (추가 시간 없음) | 1024 MB (추가 메모리 없음) | 1062 | 415 | 362 | 41.995% |
“지금 자면 꿈을 꾸지만, 지금 공부하면 꿈을 이룬다.”라는 말이 있습니다. 하지만 실버의 생각은 조금 다릅니다. 실버는 잠을 잘 자서 공부의 효율을 더 높이는 것이 중요하다고 생각합니다. 해야 할 과제가 많았던 실버는 잠을 적당히 자서 최대한 많은 과제를 해내려고 합니다.
실버에게는 N개의 과제가 있으며, i번째 과제의 기한은 Ti입니다. 실버는 시각 0부터 시작하여 원하는 시각에 원하는 과제 하나를 선택하여 진행할 수 있습니다. 과제는 한 번에 하나만 진행할 수 있으며, 과제를 진행하는 도중에 다른 과제를 시작할 수는 없습니다. 실버가 과제 하나를 완료하는 데에는 A만큼의 시간이 걸립니다.
실버는 0 이상 (A − 1) 이하의 정수 X를 고른 다음, BX만큼 잠을 잘 수 있습니다. 이때 잠을 잔 이후에는 과제 하나를 완료하는 데에 (A − X)만큼의 시간이 걸립니다. 잠은 최대 한 번 잘 수 있으며, 과제를 진행하는 도중에 잠을 잘 수는 없습니다. 또한 시각 0부터 잠을 잘 수도 있습니다.
실버는 잠을 적당히 자서 기한 내에 완료하는 과제의 수를 최대화하려 합니다. i번째 과제를 정확히 시각 Ti에 완료한 경우에도 기한 내에 완료한 것으로 생각합니다.
기한 내에 완료할 수 있는 과제의 최대 개수를 구해 봅시다!
첫 줄에 과제의 수 N, 과제 하나를 완료하는데 걸리는 초기 시간 A, 과제 완료 시간 단축의 기준이 되는 정수 B가 공백을 사이에 두고 주어집니다. (1 ≤ N, A, B ≤ 100)
둘째 줄에 각 과제의 기한을 나타내는 N개의 정수 T1, T2, ⋯, TN이 공백을 사이에 두고 주어집니다. (1 ≤ Ti ≤ 10 000)
입력으로 들어오는 모든 수는 정수입니다.
첫 줄에 기한 내에 완료할 수 있는 과제의 최대 개수를 출력합니다.
3 40 2 70 90 80
3
3 40 10 70 90 80
2
4 30 3 70 75 95 105
4
8 2 5 2 8 9 10 11 12 13 14
8