10553. Велоперегони


Відправити розв'язок

Бали: 100
Time limit: 1.0s
Memory limit: 250M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Велосипедисти, які беруть участь у шосейній гонці, в деякий момент часу, який називається початковим, опинилися в точках, віддалених від місця старту на \(x_1, x_2, ..., x_n\) метрів (\(n\) – загальна кількість велосипедистів). Кожен велосипедист рухається зі своєю постійною швидкістю \(v_1, v_2, ..., v_n\) метрів за секунду. Всі велосипедисти рухаються в одному й тому ж напрямку

Репортер, який висвітлює хід змагань, хоче визначити момент часу, коли відстань між велосипедистом, що лідирує в гонці, і велосипедистом, що замикає гонку, стане мінімальною, щоб з вертольота сфотографувати відразу всіх учасників велогонки.

Потрібно написати програму, яка за заданою кількістю велосипедистів \(n\), заданим початковим положенням велосипедистів \(x_1, x_2, ..., x_n\) та їх швидкостям \(v_1, v_2, ..., v_n\), обчислить момент часу \(t\), в який відстань \(l\) між лідируючим і замикаючим велосипедистом буде мінімальною.

Формат вхідних даних

Перший рядок вхідного потоку містить ціле число \(N\) – кількість велосипедистів. \((1≤N≤10^5)\)

У наступних \(n\) рядках вказано по два цілі числа: \(x_i\) – відстань від старту до \(i\)-го велосипедиста в початковий момент часу \((0≤x_i≤10^7)\) та \(v_i\) – його швидкість \((0≤v_i≤10^7)\).

Формат вихідних даних

У вихідний потік необхідно вивести два дійсні числа: \(t\) - час у секундах, що минув від початкового моменту часу до моменту, коли відстань в метрах між лідером і замикаючим буде мінімальною, \(l\) - відстань, що шукається.

Числа \(t\) і \(l\) повинні мати абсолютну або відносну похибку не більше \(10^{-6}\), що означає таке. Нехай виведене число дорівнює \(x\), а правильній відповіді воно дорівнює \(y\). Відповідь вважатиметься правильною, якщо значення виразу \(\frac{|x–y|}{max(1,|y|)}\) не перевищує \(10^{-6}\)

Приклад вхідних даних - 1

3
0 40
30 10
40 30

Приклад вихідних даних - 1

1 30

Приклад вхідних даних - 2

5
90 100
100 70
100 70
110 60
120 35

Приклад вихідних даних - 2

0.5 5.000000000000

Коментарі

Ще немає коментарів.