| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 1024 MB | 62 | 14 | 14 | 32.558% |
노래 듣기에 진심인 편인 치삼이는 하나의 플레이리스트로 소중한 노래들을 관리하려고 한다. 치삼이가 직접 구현한 플레이리스트에는 노래마다 "치삼 지수"라는 특별한 값이 존재한다. 이 값은 아래와 같이 정의된다.
또한 플레이리스트에는 다음과 같은 6가지 명령이 존재한다.
다음과 같은 규칙을 통해 지정 시간 T 만큼 곡을 듣는다. (1 ≤ T ≤ 100,000,000)
플레이리스트에 있는 곡 중에서 치삼 지수가 가장 높은 것을 리스트에서 제거하고 제거한 곡의 제목을 출력한다. 만약 그런 것이 여러 개라면 최상단의 것을 제거한다.
플레이리스트가 비어있을 경우 -1을 출력한다.
제목이 문자열과 일치하는 곡을 플레이리스트에서 제거하고 해당 곡의 치삼 지수를 출력한다.
그런 곡이 존재하지 않을 경우 -1을 출력한다.
새로 발견한 곡을 플레이리스트의 최상단에 추가한다. 주어지는 문자열과 정수는 곡의 제목과 곡의 길이를 의미한다. 플레이리스트에 있었던 노래 제목은 다시 주어지지 않는다.
현재 플레이리스트에 있는 노래들이 가지는 치삼 지수의 최댓값을 출력한다.
플레이리스트가 비어있을 경우 -1을 출력한다.
제목이 문자열과 일치하는 곡이 플레이리스트에 있다면 해당 곡의 치삼 지수를 출력한다.
그런 곡이 존재하지 않을 경우 -1을 출력한다.
하지만 치삼이는 플레이리스트를 완성하는 데 어려움을 겪고 있다. 여러분이 치삼이를 도와 플레이리스트를 완성할 수 있도록 도와주자.
첫 번째 줄에 세 개의 정수로 현재 플레이리스트 곡 수 N(1 ≤ N ≤ 1,000)과 주어지는 명령의 개수 M(1 ≤ M ≤ 10,000), 곡이 삭제되는 기준 S(1 ≤ S ≤ 100,000,000)가 주어진다.
두 번째 줄부터 N+1줄까지 곡의 제목을 나타내는 문자열 Ai와 곡의 길이를 나타내는 양의 정수 Ti(1 ≤ Ti ≤ 1,000)의 형태로 현재 치삼이의 플레이리스트가 위에서부터 주어진다.
곡의 제목은 중복되게 주어지지 않고, 알파벳 소문자로만 이루어져 있으며, 50글자를 넘지 않는다. N+2번째 줄부터 M 개의 명령이 주어진다. 명령은 위에서 언급한 6가지이다.
명령에서 출력을 요구하는 문장을 한 줄에 하나씩 출력한다.
3 17 5 pizza 3 papercut 5 joshua 2 L 2 E pizza L 2 E pizza P blue 4 E blue E papercut L 8 E papercut L 30 AE L 30 E blue E pizza R joshua AR AR
2 3 0 2 pizza 4 papercut 4 4 -1 4 blue -1
University > 가톨릭대학교 > 제1회 가톨릭대학교 프로그래밍 경진대회 (CCPC) > Div. 1 B번