結果
| 問題 |
No.955 ax^2+bx+c=0
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-12-18 00:20:27 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,167 bytes |
| コンパイル時間 | 137 ms |
| コンパイル使用メモリ | 81,968 KB |
| 実行使用メモリ | 65,520 KB |
| 最終ジャッジ日時 | 2024-07-06 23:53:14 |
| 合計ジャッジ時間 | 5,226 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 31 TLE * 1 -- * 90 |
ソースコード
def f(x):
return a*x**2+b*x+c
def binary_search1(l, r):
left, right = l, r
while right-left>=1e-15:
mid = (left+right)/2
if f(mid)>=0:
right = mid
else:
left = mid
return left
def binary_search2(l, r):
left, right = l, r
while right-left>=1e-15:
mid = (left+right)/2
if f(mid)<=0:
right = mid
else:
left = mid
return left
a, b, c = map(int, input().split())
if a==0:
if b==0:
if c==0:
print(-1)
else:
print(0)
else:
print(1)
print("{:.15f}".format(-c/b))
else:
if b**2-4*a*c>0:
print(2)
if a>0:
ans1 = binary_search1(-b/2/a, 10**18)
ans2 = binary_search2(-10**18, -b/2/a)
else:
ans1 = binary_search2(-b/2/a, 10**18)
ans2 = binary_search1(-10**18, -b/2/a)
print("{:.15f}".format(ans2))
print("{:.15f}".format(ans1))
elif b**2-4*a*c==0:
print(1)
print("{:.15f}".format(-b/(2*a)))
else:
print(0)