아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

3라운드 순위

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

요약
1, 2라운드 점수가 주어질 때 두 라운드에서 모두 앞선 참가자는 3라운드에서도 뒤지지 않는다는 조건 아래 각 참가자의 최고와 최저 등수를 구합니다.
난이도

보통10점 중 7점

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

문제

대회의 3라운드가 곧 시작한다. 점수를 예측하려고 다음 가정을 세웠다.

  • 참가자 A가 처음 두 라운드에서 각각 참가자 B보다 점수가 엄격히 높았다면, 3라운드에서 A는 B와 같거나 더 높은 점수를 받는다.

3라운드를 포함해 각 라운드에서 받을 수 있는 점수는 0점 이상 650점 이하의 정수다. 최종 순위표는 세 라운드 점수의 합이 큰 참가자부터 차례로 세운다. 합이 같은 참가자는 순위가 같고, 그다음 참가자는 앞에 있는 인원을 모두 센 순위를 받는다. 예를 들어 합이 1000, 1000, 900, 900, 800인 참가자의 순위는 차례로 1위, 1위, 3위, 3위, 5위다.

참가자 NN명의 1라운드 점수와 2라운드 점수를 알고 있다. 위 가정 아래에서 각 참가자가 세 라운드를 모두 마친 뒤 받을 수 있는 가장 높은 순위와 가장 낮은 순위를 구하라.

입력

첫째 줄에 참가자 수 NN이 주어진다. (1≤N≤5000001 \le N \le 500000)

다음 NN개 줄에 각 참가자의 1라운드 점수와 2라운드 점수가 순서대로 주어진다. 두 점수는 모두 0 이상 650 이하의 정수다.

출력

입력에 주어진 순서대로 참가자마다 한 줄에 두 정수를 출력한다. 그 참가자가 받을 수 있는 가장 높은 순위와 가장 낮은 순위다.

예제2

  1. 예제 1

    입력
    5
    250 180
    250 132
    220 123
    132 194
    220 105
    
    예상 출력
    1 3
    1 3
    3 5
    1 5
    3 5
    
  2. 예제 2

    입력
    10
    650 550
    550 554
    560 512
    610 460
    610 456
    650 392
    580 436
    650 366
    520 456
    490 456
    
    예상 출력
    1 4
    1 8
    2 8
    2 7
    2 9
    1 10
    4 10
    1 10
    5 10
    5 10