MP3 플레이어

시간 제한1초메모리 제한128 MB

요약
잠금 해제 방식의 MP3 플레이어에서 시간이 기록된 +/- 입력들이 주어질 때, 최종 볼륨 V2가 되도록 하는 가장 큰 잠금 시간 T와 그에 맞는 초기 볼륨 V1을 구하는 문제입니다.
난이도

어려움10점 중 8점

유형
이분 탐색, 그리디, 시뮬레이션
정답자
아직 제출이 없습니다

문제

Georg의 새 MP3 플레이어에는 키 잠금 기능이 있다. 키를 누르지 않은 채로 TT초를 초과하면 키보드가 자동으로 잠긴다. 키보드가 잠긴 상태에서는 어떤 키도 원래 기능을 수행하지 않으며, 이때 키를 누르면 그 입력은 키보드의 잠금을 해제하는 역할만 하고 다른 동작은 하지 않는다. 잠금을 해제하든 기능을 수행하든, 키를 누르는 모든 입력은 비활성 시간을 0으로 초기화한다.

예를 들어 T=5T = 5이고 현재 키보드가 잠겨 있다고 하자. Georg가 A 키를 누르고 3초를 기다린 뒤 B를, 다시 5초를 기다린 뒤 C를, 다시 6초를 기다린 뒤 D를 눌렀다. 이때 원래 기능을 수행하는 키는 B와 C뿐이다. 첫 입력 A는 잠금만 해제하고, D 직전의 6초 간격이 TT를 초과하므로 키보드가 다시 잠겨 D 역시 잠금만 해제한다.

음량은 +와 - 키로 조절하며, 각각 음량을 1만큼 올리고 내린다. 음량은 00 이상 VmaxV_{max} 이하의 정수이다. 음량이 VmaxV_{max}일 때 +를 누르거나 음량이 00일 때 -를 누르면 음량은 변하지 않는다.

Georg는 TT의 값을 모르며, 실험으로 이를 알아내려 한다. 잠긴 키보드에서 시작하여 + 또는 -인 키를 NN번 누른 뒤 화면에서 최종 음량을 읽었다. 그런데 첫 입력 직전의 음량을 적어 두지 못했다. 이 알 수 없는 초기 음량을 V1V_1, 알고 있는 최종 음량을 V2V_2라 하자.

V2V_2와 각 입력의 종류(+ 또는 -) 및 실험 시작으로부터의 경과 시간(초)이 주어질 때, 이 결과와 모순되지 않는 가장 큰 정수 TT를 구하여라.

입력

첫 줄에 공백으로 구분된 세 정수 NN, VmaxV_{max}, V2V_2가 주어진다(0≤V2≤Vmax0 \le V_2 \le V_{max}).

다음 NN개의 줄에는 각 입력이 하나씩 주어진다. 각 줄은 문자 + 또는 -, 공백, 그리고 실험 시작으로부터의 경과 시간을 나타내는 정수 CiC_i(0≤Ci≤2⋅1090 \le C_i \le 2 \cdot 10^9)로 이루어진다. 입력은 시간 순으로 주어지며 모든 시간은 서로 다르다. 즉, 모든 1≤i<N1 \le i < N에 대해 Ci<Ci+1C_i < C_{i+1}이다.

출력

TT를 무한히 크게 잡을 수 있다면 infinity라는 단어가 적힌 한 줄을 출력한다.

그렇지 않다면 두 정수 TT와 V1V_1을 공백 하나로 구분하여 한 줄에 출력한다. 이때 잠금 시간 TT로 음량 V1V_1에서 실험을 진행하면 최종 음량이 V2V_2가 되어야 한다. 가능한 TT가 여러 개면 가장 큰 것을, 그러고도 V1V_1이 여러 개면 가장 큰 것을 출력한다.

답은 항상 하나 이상 존재한다. T=0T = 0이면 어떤 키도 기능을 수행하지 않으므로 V1=V2V_1 = V_2가 항상 성립한다.

제한

2≤N≤1000002 \le N \le 100000이고 2≤Vmax≤50002 \le V_{max} \le 5000이다.

예제2

  1. 예제 1

    입력
    6 4 3
    - 0
    + 8
    + 9
    + 13
    - 19
    - 24
    
    예상 출력
    5 4
    
  2. 예제 2

    입력
    3 10 10
    + 1
    + 2
    + 47
    
    예상 출력
    infinity