A2028 [UESTCPC 2024] 取数游戏
标程
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int T;
cin >> T;
while (T--) {
int n;
cin >> n;
ll sum = 0, mx = 0;
for (int i = 0; i < n; i++) {
ll v;
cin >> v;
sum += v;
mx = max(mx, v);
}
// 结论:n 为偶数时先手必胜;n 为奇数时,只有能直接取走超过一半的数才必胜
bool win = (n % 2 == 0) || (2 * mx > sum);
cout << (win ? "YES" : "NO") << "\n";
}
return 0;
}