結果

問題 No.955 ax^2+bx+c=0
コンテスト
ユーザー hipopo
提出日時 2020-01-08 18:06:14
言語 C++17
(gcc 15.2.0 + boost 1.89.0)
コンパイル:
g++-15 -O2 -lm -std=c++17 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
WA  
実行時間 -
コード長 761 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 1,340 ms
コンパイル使用メモリ 210,464 KB
実行使用メモリ 6,400 KB
最終ジャッジ日時 2026-06-08 12:16:17
合計ジャッジ時間 3,839 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 98 WA * 24
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include <bits/stdc++.h>
using namespace std;

using ll = long long;

int main() {
    ll a, b, c;
    cin >> a >> b >> c;

    if (a == 0) {
        if (b == 0) {
            if (c == 0) printf("-1\n");
            else printf("0\n");
        }
        else printf("1\n%.15f\n", (double)-c / b);
    }
    else {
        ll d = b * b - 4 * a * c;
        if (d < 0) printf("0\n");
        else if (d == 0) printf("1\n%.15f\n", (double)-b / (2 * a));
        else {
            long double s1 = (-b + sqrt((long double)d)) / (2 * a);
            long double s2 = (-b - sqrt((long double)d)) / (2 * a);
            cout << 2 << endl;
            cout << fixed << setprecision(15) << min(s1, s2) << endl;
            cout << max(s1, s2) << endl;
        }
    }
}
0