카메라 고르기

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

요약
카메라 제안을 온라인으로 처리하면서 각 질의 시점에 픽셀과 줌 모두에서 더 나쁘지 않은 다른 제안에 의해 압도되지 않는 카메라 중 가장 싸고 가장 먼저 등장한 것을 출력합니다.
난이도

보통10점 중 7점

유형
이분 탐색, 정렬, 구현
정답자
아직 제출이 없습니다

문제

스트레인지 씨는 소형 디지털 사진 카메라를 고르고 있다. 그는 여러 가게의 제안을 살펴보며 때때로 잠정적인 선택을 한다. 잠정적으로 선택하는 시점마다, 그는 그때까지 본 모든 제안은 알고 있지만 앞으로 볼 제안은 알지 못한다.

스트레인지 씨에 따르면, 디지털 카메라는 두 가지 속성, 즉 화소 수와 광학 줌 배율로 완전히 설명된다. 두 속성 모두 클수록 좋다. 스트레인지 씨는 구식 카메라를 사는 것을 두려워하여, 어떤 카메라에 대해 한 속성이 확실히 더 좋고 다른 속성도 나쁘지 않은 다른 카메라를 이미 알고 있다면 그 카메라는 절대 고르지 않는다. 구식이 아니라고 여기는 카메라들 중에서는 가장 싼 것을 고르고, 최소 가격이 같은 구식이 아닌 카메라가 여럿이면 가장 먼저 제안된 것을 고른다.

입력

첫 줄에 테스트 케이스의 수가 주어진다. 각 테스트 케이스의 첫 줄에는 행동의 총 개수 nn (1≤n≤1051 \le n \le 10^5)이 주어진다. 각 행동은 새로운 카메라 제안이거나 잠정적 선택이며, 한 줄에 하나씩 주어지고 각 항목은 공백 하나로 구분된다.

  • 제안은 대문자 P 다음에 카메라의 화소 수, 줌 배율, 가격이 온다.
  • 잠정적 선택은 대문자 C로 표시한다.

화소 수는 정수이며 103≤pi≤10910^3 \le p_i \le 10^9이다. 줌 배율은 1≤zi≤1001 \le z_i \le 100인 실수이며 소수점 아래 자릿수는 6개를 넘지 않는다. 가격은 정수이며 1≤ci≤1061 \le c_i \le 10^6이다. 입력의 크기는 16 MB 미만이다.

출력

각 잠정적 선택마다, 현재 선택된 카메라가 제안된 행동의 번호(각 테스트 케이스 안에서 1부터 센다)를 출력한다. 고를 수 있는 카메라가 없으면 -1을 출력한다. 한 테스트 케이스의 모든 결과는 공백 하나로 구분하여 한 줄에 출력하고(줄의 앞뒤에 불필요한 공백은 두지 않는다), 연이은 테스트 케이스의 결과는 연이은 줄에 출력한다. 잠정적 선택이 하나도 없는 테스트 케이스는 어떤 줄도 출력하지 않는다.

힌트

예시에서 첫 번째 테스트 케이스에는 C 행동이 없으므로 아무 줄도 출력하지 않는다. 두 번째 테스트 케이스에서는, 첫 번째 선택 시 제안 1(1200000 1 40)은 이미 구식이므로 유일한 비구식 카메라인 제안 2(7200000 5 100)를 고른다. 두 번째 선택에서도 제안 2가 제안 4(9600000 3 200)보다 싸기 때문에 같은 선택을 한다. 세 번째 선택에서는 제안 6(7200000 12 220)이 제안 2를 구식으로 만들어, 제안 4가 비구식 카메라 중 가장 싼 것이 된다.

예제1

  1. 예제 1

    입력
    2
    1
    P 9600000 7 72
    7
    P 1200000 1 40
    P 7200000 5 100
    C
    P 9600000 3 200
    C
    P 7200000 12 220
    C
    
    예상 출력
    2 2 4