求助
查看原帖
求助
672237
qinshi0308楼主2023/5/8 21:53
# include <bits/stdc++.h>
using namespace std;
priority_queue<int> q;
priority_queue<int,vector<int>,greater<int> > p;
int main(){
	int n,t;
	cin>>n>>t;
	long long sum=0;
	int ans=0;
	for(int i=0;i<n;i++){
		int x;
		cin>>x;
		sum+=x;
		if(sum>t){
			while(!q.empty()&&sum>t){
				p.push(q.top());
				sum-=q.top();
				q.pop();
				ans++;
			}
			q.push(x);
			while(!p.empty()&&sum+p.top()<=t){
				q.push(p.top());
				sum+=p.top();
				p.pop();
				ans--;
			}
		}else{
			q.push(x);
			while(!p.empty()&&sum+p.top()<=t){
				q.push(p.top());
				sum+=p.top();
				p.pop();
				ans--;
			}
		}
		cout<<ans<<" ";
	}
	return 0; 
}

rt,老是在第13个点WA,不知道为什么,求大佬指点。

2023/5/8 21:53
加载中...