谁是中间的那个
TimeLimit: 1 Second MemoryLimit: 64 Megabyte
Totalsubmit: 1292 Accepted: 198
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
将所给的数据从小到大排序,然后输出中间的数即可
不知道为什么,数据在数组中一定要存在cow[1]~cow[n]之间,如果存在cow[0]~cow[n-1]之间就会Wrong Answer....
1 #include<iostream> 2 #include<algorithm> 3 #include<cstdio> 4 #include<cstdlib> 5 6 using namespace std; 7 8 long cow[10001]; 9 10 int main() 11 { 12 int n; 13 14 while(scanf("%d",&n)!=EOF) 15 { 16 for(int i=1;i<=n;i++) 17 scanf("%ld",&cow[i]); 18 sort(cow+1,cow+1+n); 19 printf("%ld ",cow[(n+1)/2]); 20 } 21 22 return 0; 23 }