xQAQyn @ 2019-04-14 12:22:29
#include<bits/stdc++.h>
using namespace std;
priority_queue<int> q1;
priority_queue< int,vector<int>,greater<int> > q2;
int main()
{
int n;
scanf("%d",&n);
int in;
scanf("%d",&in);
q1.push(in);
cout<<q1.top()<<endl;
int s1 = 1,s2 = 0;
for(int i = 1;i < n;i++)
{
scanf("%d",&in);
if(in > q1.top())
{
q2.push(in);
s2++;
}
else
{
q1.push(in);
s1++;
}
while(s1 - s2 > 1)
{
q2.push(q1.top());
s2++;s1--;
q1.pop();
}
while(s2 - s1 > 1)
{
q1.push(q1.top());
s1++;s2--;
q2.pop();
}
if(i % 2 == 0)
{
if(s1>s2)
cout<<q1.top()<<endl;
else
cout<<q2.top()<<endl;
}
}
return 0;
}
by smarthehe @ 2019-04-14 12:55:31
nth_element