atcoder#ABC279D. [ABC279D] Freefall

[ABC279D] Freefall

题目描述

スーパーマンである高橋くんは、地上で困っている人を助けるため、あるビルの屋上から飛び降りようとしています。 高橋くんがいる星には重力の大きさを表す g g という値が定まっており、 高橋くんが落下を開始してから地面に到達するまでにかかる時間は Ag \frac{A}{\sqrt{g}} です。

現在の時刻は 0 0 であり、g = 1 g\ =\ 1 が成り立ちます。 高橋くんは、今から次の操作を好きな回数(0 0 回でもよい)行います。

  • 超能力により g g の値を 1 1 増やす。時間が B B 経過する。

その後、高橋くんはビルから飛び降ります。落下を開始した後は g g の値を変えることはできません。 また、操作によって経過する時間と落下にかかる時間以外は考えないものとします。

高橋くんが地面に到達できる最も早い時刻を求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

A A B B

输出格式

高橋くんが地面に到達できる最も早い時刻を出力せよ。 出力は、真の値との絶対誤差または相対誤差が 106 10^{-6} 以下のとき正解と判定される。

题目大意

给定两个数 aabb1a,b10181 \le a, b \le 10^{18}),求出 $\min\limits_{g = 1}^\infty\{b \times (g - 1) + \frac{a}{\sqrt{g}}\}$。精度误差不超过 10610^{-6}

translated by

https://www.luogu.com.cn/user/367488

10 1
7.7735026919
5 10
5.0000000000
1000000000000000000 100
8772053214538.5976562500

提示

制約

  • 1  A  1018 1\ \leq\ A\ \leq\ 10^{18}
  • 1  B  1018 1\ \leq\ B\ \leq\ 10^{18}
  • 入力は全て整数

Sample Explanation 1

- 操作を 0 0 回行うとき、地面に到達する時刻は 1× 0+101 = 10 1\times\ 0+\frac{10}{\sqrt{1}}\ =\ 10 です。 - 操作を 1 1 回行うとき、地面に到達する時刻は $ 1\times\ 1+\frac{10}{\sqrt{2}}\ \fallingdotseq\ 8.07 $ です。 - 操作を 2 2 回行うとき、地面に到達する時刻は $ 1\times\ 2+\frac{10}{\sqrt{3}}\ \fallingdotseq\ 7.77 $ です。 - 操作を 3 3 回行うとき、地面に到達する時刻は 1× 3+104 = 8 1\times\ 3+\frac{10}{\sqrt{4}}\ =\ 8 です。 操作を 4 4 回以上行っても、地面への到達時刻は遅くなるのみです。 よって、操作を 2 2 回行ってから飛び降りるのが最適で、答えは 2+103 2+\frac{10}{\sqrt{3}} です。

Sample Explanation 2

操作を 1 1 回も行わないのが最適です。