eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Крани з водою

Крани з водою

Лимит времени 1 секунда
Лимит использования памяти 64 MiB

Розглянемо систему з n кранів, що наповнюють певну ємність водою. Кран номер i може бути настроєний на подачу води будь якого об'єму води від 0 до a[i] мл в секунду (це число може бути дійсним). Вода в i-ому крані має температуру t[i].

Якщо для кожного i ∈[1,n] виставити, щоб i-тий кран наливав рівно x[i] мл води в секунду, то температура води в результаті буде:

prb_11.jpg

Вам необхідно виставити всі крани таким чином, щоб отримана температура була рівно T. Який максимальний об'єм води в секунду температури T можна отримати?

Входные данные

В першому рядку знаходиться два цілих числа n і T (1 ≤ n ≤ 2·10^5, 1 ≤ T ≤ 10^6) – кількість кранів з водою і бажана температура води.

В другому рядку записано n цілих чисел a[1, a[2] ... a[n](** 1 ≤a[i]10^6`) – максимальний об'єм води, який відповідний кран може видавати в секунду.

В третьому рядку знаходиться n чисел t[1], t[2] ... t[n] (1 ≤ t[i]10^6) – температура води в відповідному крані.

Выходные данные

Виведіть максимально можливий об'єм води температури T, який можна отримати в секунду. Якщо заданої температури досягти неможливо, виведіть 0.

Ваша відповідь буде зарахована, якщо її абсолютна або відносна похибка менша за 10^(-3)

Пример

Входные данные #1
2 100
3 10
50 150
Выходные данные #1
6.000000000000000
Входные данные #2
3 9
5 5 30
6 6 10
Выходные данные #2
40.000000000000000
Входные данные #3
2 12
1 3
10 15
Выходные данные #3
1.666666666666667