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

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

정찰

시간 제한3초메모리 제한256 MB

요약
위치와 일정한 속도가 주어진 차량들을 모두 덮는 구간의 최소 길이를 미래 시각 중에서 찾습니다.
난이도

보통10점 중 5점

유형
이분 탐색, 수학
정답자
아직 제출이 없습니다

문제

적이 사용하는 주요 보급로를 찾아냈다. 위성 영상으로 보급로 위를 달리는 모든 차량의 현재 위치와 속도를 알아냈다. 보급로는 사실상 무한히 긴 직선이고, 각 차량은 일정한 속도로 움직이며, 차량끼리는 아무 방해 없이 서로를 지나칠 수 있다.

이제 특수 센서를 실은 무인기를 띄워 차량에 실린 내용물을 판독하려 한다. 센서는 사거리 안의 모든 것을 즉시 읽지만, 전력이 모자라 단 한 번만 작동한다. 필요한 사거리를 줄이려면 차량이 가장 가까이 모인 순간에 무인기를 보내야 한다.

지금을 시각 00이라 하자. 시각 t≥0t \ge 0에서 모든 차량을 덮는 가장 짧은 구간의 길이는 그 시각의 가장 앞선 차량과 가장 뒤처진 차량 사이의 거리이다. 모든 차량의 현재 위치와 속도가 주어질 때, 이 값을 t≥0t \ge 0 전체에서 최소로 만든 값을 구하라.

입력

입력은 여러 개의 테스트 케이스로 이루어진다.

각 테스트 케이스의 첫 줄에는 차량의 수 nn (1≤n≤1000001 \le n \le 100000)이 주어진다. 이어지는 nn개의 줄에는 각각 정수 두 개 xx와 vv (−100000≤x,v≤100000-100000 \le x, v \le 100000)가 주어진다. xx는 차량의 현재 위치(미터), vv는 속도(시속 미터)이고, vv의 부호가 진행 방향을 뜻한다.

입력의 마지막 줄에는 00 하나만 주어진다.

출력

각 테스트 케이스마다 모든 차량을 덮는 구간의 길이가 가장 짧아지는 순간의 그 길이를 미터 단위로 한 줄에 하나씩 출력한다.

값은 소수점 아래 셋째 자리에서 반올림해 소수점 아래 둘째 자리까지, 자리 수를 정확히 맞춰 출력한다. 줄 안에 공백을 넣지 않고, 출력 사이에 빈 줄도 넣지 않는다.

예제3

  1. 예제 1

    입력
    2
    -100 1
    100 -1
    3
    -100 1
    100 -1
    101 -1
    3
    -100 -1
    0 0
    100 1
    0
    
    예상 출력
    0.00
    1.00
    200.00
    
  2. 예제 2

    입력
    1
    0 0
    1
    -100000 100000
    4
    5 -3
    5 -3
    5 -3
    5 -3
    0
    
    예상 출력
    0.00
    0.00
    0.00
    
  3. 예제 3

    입력
    3
    0 5
    10 5
    25 5
    3
    0 7
    1 -2
    20 -1
    3
    0 3
    100 -4
    50 1
    0
    
    예상 출력
    25.00
    19.11
    21.43