优先队列40pts求调
  • 板块P1168 中位数
  • 楼主Epi4any
  • 当前回复0
  • 已保存回复0
  • 发布时间2022/11/17 22:03
  • 上次更新2023/10/27 02:35:40
查看原帖
优先队列40pts求调
374769
Epi4any楼主2022/11/17 22:03

Wrong Answer on test #1 #2 #5

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e5+5;
int n, a[maxn];
priority_queue<int, vector<int>, less<int>> p;
priority_queue<int, vector<int>, greater<int>> q;
//1234->p 567->q
int main() {
	ios :: sync_with_stdio(false), cin.tie(0), cout.tie(0);
	cin>>n;
	for(int i=1,x;i<=n;i++) {
		cin>>x;
		if(p.empty()) p.push(x);
		else if(q.empty()) q.push(x);
		else if(x<q.top()) p.push(x);
		else if(x>=q.top()) q.push(x);
		if(q.size()>p.size()) p.push(q.top()),q.pop();
		if(p.size()>q.size()+1) q.push(p.top()),p.pop();
		if(i&1) cout<<p.top()<<endl;
	}
	return 0;
}

大佬轻喷qwq

2022/11/17 22:03
加载中...