結果
問題 |
No.1944 ∞
|
ユーザー |
|
提出日時 | 2022-05-20 22:11:39 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 67 ms / 2,000 ms |
コード長 | 897 bytes |
コンパイル時間 | 660 ms |
コンパイル使用メモリ | 91,920 KB |
実行使用メモリ | 7,844 KB |
最終ジャッジ日時 | 2025-06-20 00:27:45 |
合計ジャッジ時間 | 1,849 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 37 |
ソースコード
#include <iostream> #include <vector> #include <algorithm> #include <utility> #include <set> #include <map> #include <queue> using namespace std; int main() { int N; cin >> N; long long X, Y; cin >> X >> Y; vector<long long> R(N); for (int i = 0; i < N; i++) cin >> R[i]; long long sum = 0; for (int i = 0; i < N; i++) { sum += R[i] * 2; } sort(R.begin(), R.end()); sum -= R[0]; if (N == 1) { if (X * X + Y * Y == R[0] * R[0]) cout << "Yes" << endl; else cout << "No" << endl; } else if ((X * X + Y * Y) / sum < sum) cout << "Yes" << endl; else if ((X * X + Y * Y) / sum == sum) { if ((X * X + Y * Y + sum - 1) / sum == sum) cout << "Yes" << endl; else cout << "No" << endl; } else cout << "No" << endl; }