ACM 之 G - Who's in the Middle

Description

FJ is surveying his herd to find the most average cow. He wants to know how much milk this 'median' cow gives: half of the cows give as much or more than the median; half give as much or less.
Given an odd number of cows N (1 <= N < 10,000) and their milk output (1..1,000,000), find the median amount of milk given such that at least half the cows give the same amount of milk or more and at least half give the same or less.

Input

  • Line 1: A single integer N
  • Lines 2..N+1: Each line contains a single integer that is the milk output of one cow.

Output

  • Line 1: A single integer that is the median milk output.

Sample Input

5
2
4
1
3
5

Sample Output

3

理解

排序 , 输出中间值 .

代码部分

#include<iostream>
#include<algorithm>//第一次用这个头文件.也就是包含许多数学算法函数的头文件.
using namespace std;
bool cmp(int a,int b)
{
    return a>b;
}
int main()
{
    int n;
    while(cin>>n)
    {
        int a[10000];
        for(int i=0;i<n;i++)
            cin>>a[i];
        sort(a,a+n,cmp);//排序
        cout<<a[(n-1)/2]<<endl;
    }
    return 0;
}

意见反馈 || 任何建议

联系我(新浪)
邮箱:qianlizhihao@gmail.com

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容