记录编号 |
337226 |
评测结果 |
AAAAAAAAAAAAAAAAAAAA |
题目名称 |
中位数 |
最终得分 |
100 |
用户昵称 |
Hzoi_Queuer |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
5.670 s |
提交时间 |
2016-11-04 08:09:58 |
内存使用 |
1.25 MiB |
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<algorithm>
#define Read(x) scanf("%d",&x);
using namespace std;
const int maxn=250005;
int n,a[maxn];
int main()
{
freopen("median.in","r",stdin);
freopen("median.out","w",stdout);
Read(n);int mid=n/2+1,x;
for(int i=1;i<=mid;i++){
Read(a[i]);
push_heap(a+1,a+1+i);
}
for(int i=mid+1;i<=n;i++){
Read(x);
if(a[1]>x){
pop_heap(a+1,a+1+mid);
a[mid]=x;
push_heap(a+1,a+1+mid);
}
}
int ans=a[1];
if(n&1)printf("%.1f",ans*1.0);
else{
ans+=max(a[2],a[3]);
printf("%.1f",ans*1.0/2.0);
}
return 0;
}