| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 1024 MB | 215 | 40 | 36 | 19.251% |
세종이는 $N$일 동안의 방학을 알차게 보내기 위해 다른 학생들과 하루에 한 번씩 코딩 대결을 하려고 한다. 코딩을 잘할수록 코딩 대결을 쉽게 이길 수 있겠지만, 코딩 실력에 못지않게 멘탈 관리 역시 코딩 대결의 승패를 가르는 중요한 요인이다. 구체적으로, 코딩 대결에서 어떤 학생이 보이는 퍼포먼스는 그 학생의 코딩 실력과 멘탈 수치의 합으로 정의된다. 이때 둘 중 퍼포먼스가 더 높은 쪽이 코딩 대결에서 승리한다.
세종이는 자신보다 코딩 실력이 높은 학생을 이긴 경우 둘의 코딩 실력의 차이만큼 멘탈 수치를 얻는다. 반대로 대결에서 진 경우 멘탈 수치를 일정 수치만큼 잃게 되며, 세종이보다 코딩 실력이 낮은 학생에게 졌다면 둘의 코딩 실력의 차이만큼 추가로 멘탈 수치를 잃게 된다. 퍼포먼스가 같은 학생과 대결을 하면 무승부가 되며, 세종이의 멘탈 수치는 변하지 않는다.
멘탈 수치가 $0$ 이하가 된다면 세종이는 코딩을 그만두게 될 것이다. 코딩을 계속하고 싶은 세종이는 멘탈 관리를 위해서는 어느 정도의 휴식 역시 필요하다고 생각했다. 휴식을 취하는 날에 세종이는 코딩 대결을 하지 않고 하루 종일 자면서 멘탈을 회복할 것이다. 그러나 이미 대결할 $N$명의 학생들을 구한 상태였기 때문에, 각 학생과의 대결 날짜와 휴식할 날짜를 잘 조절해 방학 중에 최대한 많은 학생과 코딩 대결을 하고자 한다. 모든 학생과 최대 $1$번만 코딩 대결을 할 때, 세종이가 코딩을 그만두지 않으면서 방학 동안 할 수 있는 코딩 대결 횟수의 최댓값을 구하는 프로그램을 작성하시오.
첫째 줄에 방학의 일수 $N$, 대결에서 졌을 때 깎이는 멘탈 수치 $L$, 휴식을 통해 얻을 수 있는 멘탈 수치 $R$이 공백으로 구분되어 주어진다. $(1\leq N\leq 100\, 000;$ $1\leq L,R\leq 10^{8};$ $N,L,R$은 정수$)$
둘째 줄에 세종이의 코딩 실력 $S$과 초기 멘탈 수치 $M$이 공백으로 구분되어 주어진다. $(1\leq S,M\leq 10^{8};$ $S,M$은 정수$)$
셋째 줄부터 $N$개의 줄에 걸쳐 각 학생의 코딩 실력 $u$와 멘탈 수치 $v$가 공백으로 구분되어 주어진다. $(1\leq u,v\leq 10^{8};$ $u,v$는 정수$)$
첫째 줄에 세종이가 방학 동안 할 수 있는 코딩 대결 횟수의 최댓값을 출력한다.
3 5 6 10 7 8 11 11 20 12 6
2
School > 세종과학예술영재학교 > SASA Programming Contest 2023 I번