結果

問題 No.955 ax^2+bx+c=0
ユーザー lloyz
提出日時 2023-10-25 00:15:42
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 933 bytes
コンパイル時間 260 ms
コンパイル使用メモリ 82,592 KB
実行使用メモリ 63,008 KB
最終ジャッジ日時 2024-09-24 19:18:33
合計ジャッジ時間 8,734 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 120 WA * 2
権限があれば一括ダウンロードができます

ソースコード

diff #

def calc(a, b, c, x):
    return a * x**2 + b * x + c

a, b, c = map(int, input().split())
if a == b == 0:
    if c == 0:
        print(-1)
    else:
        print(0)
elif a == 0:
    print(1)
    print(-c / b)
else:
    d = b**2 - 4 * a * c
    if d < 0:
        print(0)
    elif d == 0:
        print(1)
        print(-b / 2 / a)
    else:
        print(2)
        if a < 0:
            a *= -1
            b *= -1
            c *= -1
        ng, ok = -10**10, -b / 2 / a
        for _ in range(10000):
            mid = (ng + ok) / 2
            res = calc(a, b, c, mid)
            if res <= 0:
                ok = mid
            else:
                ng = mid
        print(ok)
        ok, ng = -b / 2 / a, 10**10
        for _ in range(10000):
            mid = (ng + ok) / 2
            res = calc(a, b, c, mid)
            if res <= 0:
                ok = mid
            else:
                ng = mid
        print(ok)
0