题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4981
解析:
序列求median number即a[(n+1)/2],不过要注意先排序啊!
这里注意求平均数的时候,在C中需要ave = (1.0*sum)/n;
由于我们这里数字比较小,所以可以将n乘到不等式的另一边,即比较median*n与sum就可以了。
代码:
/*
ID:muller8
Name: 4981 Goffi and Median
Reference: 水题
*/
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std;
#define MAXN 10005
#define INF 1e9
int a[MAXN];
int main(){
int n;
while(~scanf("%d", &n)){
int sum = 0;
for(int i=1; i<=n; ++i){
scanf("%d", &a[i]);
sum+=a[i];
}
sort(a+1, a+1+n);
if(a[(n+1)/2]*n>sum) printf("YES\n");
else printf("NO\n");
}
return 0;
}