만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

운전 연습

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

요약
각 충전소에서 마법사를 만났을 때 자동차가 원점에서 가장 멀리 가서 전기가 떨어지도록 할 순간이동 충전소와 전기량 변화를 구합니다.
난이도

보통10점 중 7점

유형
그리디, 누적 합, 스택
정답자
아직 제출이 없습니다

문제

장롱 면허를 보유한 시은이는 수직선 위에서 운전 연습을 하려고 한다. 시은이는 원점에서 출발하여 항상 양의 방향으로 이동할 것이다. 자동차는 단위 거리 1만큼 이동할 때마다 전기 1kWh를 소모하며, 전기를 소모하는 방법은 이동하는 것뿐이다. 처음 자동차에는 전기가 없으며, 전기가 없는 자동차는 충전하기 전까지 이동할 수 없다.

수직선 위에는 0번부터 NN번까지 총 N+1N + 1개의 충전소가 있다. ii번 충전소는 수직선 위의 점 AiA_i에 있으며, 방문하면 FiF_ikWh의 전기를 충전할 수 있다. 0번 충전소를 제외한 충전소 중 하나에는 장난꾸러기 마법사가 숨어 있다. 시은이가 그 충전소에 도착하면, 마법사는 그보다 이전에 있는(즉, 원점에 더 가까운) 충전소 중 하나로 시은이를 순간이동시킨다. 순간이동할 충전소는 시은이가 고를 수 있다. 순간이동에는 전기가 소모되지 않으며, 마법사는 한 번 장난을 치면 다시는 장난을 치지 않는다.

마법사가 장난을 칠 때에는 충전할 수 없으며, 순간이동 후 다시 만난 충전소에서는 충전할 수 있다. 예를 들어 시은이가 3번 충전소에서 마법사를 만나고 1번 충전소로 순간이동하기로 했다면, 0 → 1 → 2 → (마법사의 장난으로 3번에서는 충전하지 못함) → 1 → 2 → 3 → … 순서로 충전할 수 있다.

시은이가 각 충전소에서 마법사를 만났다고 가정할 때, 자동차가 원점으로부터 가장 먼 위치에서 방전되려면 몇 번 충전소를 선택해야 하는지 알아보자.

입력

첫째 줄에 0번 충전소를 제외한 충전소의 수 NN이 주어진다.

다음 N+1N + 1개의 줄에는 0번 충전소부터 번호 순서대로 각 충전소의 정보가 한 줄에 하나씩 주어진다. ii번 충전소의 정보는 AiA_i와 FiF_i이며, 공백으로 구분된다.

출력

총 NN줄을 출력한다. ii번째 줄에는 두 정수 xix_i와 yiy_i를 공백으로 구분하여 출력한다. (1≤i≤N1 \le i \le N)

마법사를 만나지 않은 채로 ii번 충전소에 도달할 수 없다면

  • xix_i와 yiy_i는 모두 -1이다.

그 밖의 경우

  • xix_i는 ii번 충전소에서 마법사를 만났을 때 시은이가 선택해야 할 충전소의 번호이다.
  • yiy_i는 xix_i번 충전소로 순간이동한 뒤 다시 ii번 충전소로 돌아왔을 때, 자동차에 충전된 전기의 변화량이다.
  • 조건을 만족하는 xix_i가 여러 개라면 가장 큰 값을 출력한다.

제한

  • 1≤N≤200,0001 \le N \le 200{,}000
  • A0=0A_0 = 0
  • A0<A1<A2<⋯<AN≤1012A_0 < A_1 < A_2 < \cdots < A_N \le 10^{12}
  • 1≤Fi≤1061 \le F_i \le 10^6 (0≤i≤N0 \le i \le N)
  • 자동차에는 무한히 많은 전기를 충전할 수 있다.
  • 입력으로 주어지는 수는 모두 정수다.

예제2

  1. 예제 1

    입력
    3
    0 2
    2 5
    6 8
    100 1
    
    예상 출력
    0 0
    1 1
    -1 -1
    
  2. 예제 2

    입력
    5
    0 5
    3 1
    6 5
    10 2
    13 8
    15 2
    
    예상 출력
    0 2
    0 0
    2 1
    2 0
    4 6