11983. Вільне падіння
Супермен Степан збирається стрибнути з даху будівлі, щоб допомогти людині, яка потрапила в біду на землі. Планета Степана має постійне значення \(g\), яке представляє силу тяжіння, а час, який потрібен йому, щоб досягти землі після початку падіння, становить \(A\) поділити на корінь квадратний із \(g\) (\(A/sqrt(g)\)).
Зараз час 0 і \(g=1\). Степан виконає наступну операцію скільки завгодно разів (можливо, нуль).
- Використає надздібність, щоб збільшити значення \(g\) на 1. Це займає час \(B\).
Тоді він стрибне з будівлі. Після початку падіння він не може змінити значення \(g\). Крім того, ми враховуємо лише час, необхідний для виконання операції та падіння.
Знайдіть час, коли Степан може досягти землі.
Обмеження
- \(1≤A≤10^{18}\)
- \(1≤B≤10^{18}\)
- Усі значення у вхідних даних є цілими числами.
Формат вхідних даних
Перший рядок містить цілі числа \(A, B\).
Формат вихідних даних
У вихідний потік виведіть час, коли Степан може досягти землі.
Ваш результат буде прийнято, якщо його абсолютна або відносна похибка від справжнього значення становитиме не більше \(10^{−6}\).
Приклад вхідних даних
10 1
Приклад вихідних даних
7.7735026919
- Якщо він виконає операцію нуль разів, він досягне землі в момент часу 1×0+ 10/1=10.
- Якщо він зробить операцію один раз, то вчасно досягне землі 1×1+10/sqrt(2)≒8.07.
- Якщо він зробить операцію двічі, він досягне землі вчасно 1×2+10/sqrt(3)≒7,77.
- Якщо він зробить операцію тричі, то вчасно досягне землі 1×3+10/sqrt(4)=8.
Виконання операції чотири або більше разів лише збільшить час досягнення землі. Тому оптимально виконати операцію двічі перед тим, як зістрибнути, і відповідь є 2+10/sqrt(3).
Приклад вхідних даних
5 10
Приклад вихідних даних
5.0000000000
Оптимально операцію не проводити взагалі.
Приклад вхідних даних
1000000000000000000 100
Приклад вихідних даних
8772053214538.5976562500
Коментарі