結果
問題 |
No.550 夏休みの思い出(1)
|
ユーザー |
|
提出日時 | 2017-07-29 00:09:31 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 100 ms / 2,000 ms |
コード長 | 481 bytes |
コンパイル時間 | 383 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 12,288 KB |
最終ジャッジ日時 | 2024-10-11 05:35:06 |
合計ジャッジ時間 | 7,454 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 55 |
コンパイルメッセージ
Syntax OK
ソースコード
def bin_sect(a, b, c, lo, hi) while hi - lo > 1 mid = (hi + lo) / 2 val = mid * (mid * (mid + a) + b) + c if val > 0 hi = mid else lo = mid end end lo end a, b, c = gets.split.map(&:to_i) x0 = 0 if c > 0 x0 = bin_sect(a, b, c, -10 ** 10, 0) elsif c < 0 x0 = bin_sect(a, b, c, 0, 10 ** 10) end d = a + x0 e = x0 == 0 ? b : -c / x0 ss = Math.sqrt(d * d - 4 * e).to_i x1 = (-d + ss) / 2 x2 = (-d - ss) / 2 x = [x0, x1, x2].sort puts x*' '