結果
| 問題 |
No.2508 Discriminant
|
| コンテスト | |
| ユーザー |
forest3
|
| 提出日時 | 2024-01-13 18:19:46 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 867 ms / 2,000 ms |
| コード長 | 771 bytes |
| コンパイル時間 | 5,648 ms |
| コンパイル使用メモリ | 367,648 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-09-28 01:41:58 |
| 合計ジャッジ時間 | 6,387 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 22 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
#include <boost/multiprecision/cpp_int.hpp>
using namespace boost::multiprecision;
using ll = long long;
#define rep(i, n) for(int i = 0; i < n; i++)
int main() {
string sa, sp, sq;
cin >> sa >> sp >> sq;
cpp_int a = 0, p = 0, q = 0;
int s;
int sz = sa.size();
s = 1;
rep(i, sz) {
if(isdigit(sa[i])) a = a * 10 + sa[i] - '0';
else s = -1;
}
a *= s;
sz = sp.size();
s = 1;
rep(i, sz) {
if(isdigit(sq[i])) p = p * 10 + sp[i] - '0';
else s = -1;
}
p *= s;
sz = sq.size();
s = 1;
rep(i, sz) {
if(isdigit(sq[i])) q = q * 10 + sq[i] - '0';
else s = -1;
}
q *= s;
cpp_int b = (p + q) * a;
cpp_int c = (p * q) * a;
string ans = "No";
if( b * b > 4 * a * c ) ans = "Yes";
cout << ans << endl;
}
forest3