페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#7061
서브태스크

수박 겉핥기 1초 1024MB

문제

수박이 한 줄로 N개가 늘어져 있고, 그 중 i번째 수박의 맛은 k_i이다. 이때, 수박들은 k_i가 증가하는 순으로 정렬되어 있다.

각 수박은 전체를 먹는데 a분이 걸리고, 수박의 겉만 핥는데에는 b분이 걸린다. 전체를 먹는 시간에는 수박의 겉을 핥는 시간도 포함되기 때문에 a>b를 항상 만족한다.

정올이는 총 T분 동안, 1번 수박부터 순서대로 수박들을 핥아보면서 이 수박 전체를 먹을지 말지 결정하여 전체를 먹은 수박들의 맛의 합이 최대가 되도록 하고 싶다. 이 값을 구해보자.

구체적으로, 어떤 수박을 b분 동안 핥으면서 정올이는 이 수박을 먹을 지 말지 결정한다. 먹기로 했다면 추가로 a-b분을 소모하여 전체 수박을 먹을 것이고, 그렇지 않다면 다음 수박으로 넘어갈 것이다.

꼭 모든 수박을 핥아볼 필요는 없다. 중간에 수박을 핥지 않고 넘어가는 것도 불가능하다.


입력

첫 줄에 N, T, a, b가 주어진다. (1\leq N\leq 200000, 1\leq T\leq 10^9, 1\leq b<a\leq 10^9)

그 다음 줄에 각 수박의 맛을 나타내는 길이 N의 배열 k_1, k_2, ..., k_N이 주어진다. (1\leq k_i\leq 10^9, k_i\leq k_{i+1})


출력

한 줄에 T분 동안 먹은 수박의 맛의 합의 최대값을 출력하여라.


부분문제

번호 점수 조건
#123점

k_1=k_2=...=k_N

#228점

N\leq 1000

#349점

제한 없음


예제1

입력
3521
224
출력
6

첫 수박 전체를 먹고 (2분), 두번째 수박을 겉핥기 한 뒤 (1분), 세번째 수박을 먹으면 (2분) 총 5분에 맛의 합이 6이 되도록 수박을 먹을 수 있다.


예제2

입력
21031
33
출력
6

예제3

입력
41032
3456
출력
12

출처

COCI 2023/2024 Contest #4 2번

역링크