結果
問題 |
No.955 ax^2+bx+c=0
|
ユーザー |
|
提出日時 | 2024-07-28 02:42:50 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,228 bytes |
コンパイル時間 | 255 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 63,872 KB |
最終ジャッジ日時 | 2024-07-28 02:42:57 |
合計ジャッジ時間 | 6,632 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 31 TLE * 1 -- * 90 |
ソースコード
## https://yukicoder.me/problems/no/955 import math def main(): a, b, c = map(int, input().split()) if a == 0 and b == 0: if c == 0: print(-1) else: print(0) elif a == 0: print(1) print(-c / b) else: if a < 0: a *= -1 b *= -1 c *= -1 d = b ** 2 - (4 * a * c) if d > 0: print(2) y = -b / (2 * a) def func(x): return a * (x ** 2) + b * x + c low = -10 ** 9 high = y while high - low > 10 **(-11): mid = (high + low ) /2 if func(mid) >= 0.0: low = mid else: high = mid print(low) low = y high = 10 ** 9 while high - low > 10 **(-11): mid = (high + low ) /2 if func(mid) >= 0.0: high = mid else: low = mid print(high) elif d == 0: print(1) print(-b / (2 * a)) else: print(0) if __name__ == '__main__': main()