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

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

비행 충돌

면접 대비

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

요약
직선 위에서 각기 다른 위치와 속도로 움직이는 드론들이 충돌해 추락할 때, 끝까지 살아남는 드론의 번호를 오름차순으로 출력한다.
난이도

보통10점 중 7점

유형
스택, 정렬, 시뮬레이션, 그리디
정답자
아직 제출이 없습니다

문제

아이슬란드 택배 순환 공사(Icelandic Corporation for Parcel Circulation)는 아이슬란드와 세계 각지 사이에서 물건을 운송하는 선두 기업이다. 이 회사의 최신 혁신은 유럽 본토로 이어지는 드론 노선으로, 하나의 경로를 따라 여러 드론이 왕복 비행한다.

드론에는 두 대가 서로 가까워지면 회피 기동을 할 수 있는 정교한 시스템이 탑재되어 있다. 하지만 소프트웨어 결함으로 이 시스템이 작동하지 않게 되었고, 이제 모든 드론은 충돌을 피할 방법 없이 경로를 따라 비행한다.

이 문제에서 드론은 일정한 속도로 무한한 직선을 따라 움직이는 점으로 취급한다. 두 드론이 같은 위치에 있으면 충돌하여 비행 경로를 벗어나 대서양으로 추락한다. 드론의 비행 일정은 어느 시점에도 세 대 이상의 드론이 같은 위치에서 충돌하지 않도록 보장된다.

각 드론의 현재 위치와 속도를 알고 있다. 시스템 고장으로 인한 피해를 평가하기 위해, 충돌하지 않고 계속 비행하는 드론을 찾아야 한다.

입력

입력은 다음과 같다.

  • 정수 nn (1≤n≤1051 \leq n \leq 10^5)이 있는 한 줄. 드론은 11번부터 nn번까지 번호가 매겨진다.
  • nn개의 줄이 이어지며, ii번째 줄에는 ii번째 드론의 무한한 직선 상의 현재 위치와 속도인 두 정수 x_ix\_i와 v_iv\_i (−109≤x_i,v_i≤109-10^9 \leq x\_i,v\_i \leq 10^9)가 주어진다.

드론은 xx 좌표가 증가하는 순서로 주어지며, 현재 같은 위치에 있는 드론은 없다. 즉, 각 ii에 대해 x_i<x_i+1x\_i < x\_{i+1}이다. 세 대 이상의 드론이 관련된 충돌은 일어나지 않는다고 가정한다.

출력

충돌하지 않는 드론의 수를 출력하고, 이어서 그 드론들의 번호를 오름차순으로 출력한다.

예제2

  1. 예제 1

    입력
    3
    10 15
    30 5
    50 -1
    
    예상 출력
    1
    3
    
  2. 예제 2

    입력
    6
    0 3
    2 2
    3 1
    4 3
    5 2
    6 3
    
    예상 출력
    2
    1 6