Posted on 2012-09-23 17:18
hoshelly 阅读(1121)
评论(0) 编辑 收藏 引用 所属分类:
Programming
Totalsubmit: 790 Accepted: 47
Description
一天,农夫乔伊像往常一样来到了他的牧场,他突然对他的奶牛产奶量产生了兴趣。
他想知道产奶量处于中间的那头奶牛的产奶量是多少,处于中间的意思是说,其中有一半牛的产奶量比它多,另一半牛的产奶量比它少。
这个问题现在交由你来写程序完成!
Input
仅包括一组测试数据,第一行一个正整数N(1<=N<=10,000),接下来N行,每行一个正整数不会超过10^6,第i+1行的数字代表第i头牛的产奶量。
Output
产奶量处于中间的牛的产奶量。
Sample Input
5
1
2
4
5
3
Sample Output
3
#include<iostream>
#include<algorithm>
using namespace std;
int compare(const void * a,const void * b)
{
return *(int*)a - *(int*)b;
}
int main()
{
int n,cow[10005];
while(cin>>n)
{
for(int i=1;i<=n;i++)
{
cin>>cow[i];
}
qsort(cow+1,n,sizeof(int),compare);
cout<<cow[(n+1)/2]<<endl;
}
return 0;
}