题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1205
/* 水题: 最大的情况是:#^#%#^# (#,^,%表示糖果),比这种情况再多一粒就会No 这种情况x下 x + x-1 = sum 所以: x = (sum + 1)/2。(sum为奇数) 所以判断为No的条件为:max >= (sum + 1)/2 + 1 */ #include <iostream> using namespace std; int main() { int t, n, a, max; __int64 sum; cin >> t; while (t--) { sum = max = 0; cin >> n; while (n--) { cin >> a; if (a > max) max = a; sum += a; } puts((max >= (sum+1)/2+1) ? "No" : "Yes"); } }