結果
問題 |
No.955 ax^2+bx+c=0
|
ユーザー |
|
提出日時 | 2020-06-01 23:58:52 |
言語 | Ruby (3.4.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 696 bytes |
コンパイル時間 | 156 ms |
コンパイル使用メモリ | 7,296 KB |
実行使用メモリ | 12,544 KB |
最終ジャッジ日時 | 2024-11-22 15:49:38 |
合計ジャッジ時間 | 14,135 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 97 WA * 25 |
コンパイルメッセージ
Syntax OK
ソースコード
a, b, c = gets.to_s.split.map{|i| i.to_i } if a < 0 a = -a b = -b c = -c end if a == 0 && b == 0 puts c == 0 ? -1 : 0 elsif a == 0 puts 1 printf "%.15f\n", (-c/1.0/b) else d = b ** 2 - 4 * a * c if d < 0 puts 0 elsif d == 0 puts 1 printf "%.15f\n", (-b/2.0/a) # ans = Rational( -b, 2 * a) # puts "1 #{ans.to_f}" else ans1 = (-b - d ** 0.5) / ( 2.0 * a ) ans2 = (-b + d ** 0.5) / ( 2.0 * a ) ans1 = (ans1 * 10**14).round / (1.0*(10**14)) ans2 = (ans2 * 10**14).round / (1.0*(10**14)) # ans1, ans2 = ans2, ans1 if a < 0 puts 2 printf "%.20f\n", ans1 printf "%.20f\n", ans2 # puts "2 #{ans1.to_f} #{ans2.to_f}" end end