求助!!!
查看原帖
求助!!!
171513
Polariserist楼主2020/11/9 20:34

对顶堆WA求助,样例过了。。。

#include<bits/stdc++.h>
using namespace std;
int n,w,a[100100]; 
priority_queue<int>q1,q2;
int main(){
	cin>>n>>w;
	for(int i=1;i<=n;i++){
		int x;
		cin>>x;
		if(x==0){
			q2.push(x);
		}
		else{
			q1.push(-x);
		}
		int p=max(1,i*w/100);
		while(q2.size()>i-p){
			int x=q2.top();
			q2.pop();
			q1.push(-x);
		}
		while(q1.size()>p){
			int x=-q1.top();
			q1.pop();
			q2.push(x);
		}
		cout<<-q1.top()<<' ';
	}
}

2020/11/9 20:34
加载中...