演習課題「整数での二分探索」
整数 n, k と長さ n の配列 a が与えられるので、a[0] ~ a[n-1] の長さのパイプから k 本以上切り出すことができる整数単位での最大の長さを求めてください。
すでに入力を行うコードが実装されているので、コードを書き足して完成させてください。
期待する出力値
2
※有料会員になるとこの動画をご利用いただけます
詳しい説明を読む
#04:最大値を求める
レベルアップ問題集「二分探索メニュー」の「パイプを切り出そう」の問題を解いていきます。
今回の問題で求められている精度は 10^{-6} (0.000001) です。また、二分探索の初期範囲は 0.0 から 10001.0 です。
したがって、二分探索で狭めるべき範囲の大きさは約 10^{10} (≒ 10001.0 / 10^{-6}) 分の 1 になります。
これに対し底を 2 とする対数をとると、log_2(10^{10}) ≒ 33.22 となります。したがって、二分探索のループの回数は 34 回以上にすることで必要な精度を得ることができます。
ログインすると採点できます
コードの実行