呜呜呜呜呜0分求条
查看原帖
呜呜呜呜呜0分求条
710870
bdcml楼主2024/8/5 09:03
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N = 3*1e5+5;
ll n,m,k;
ll a[N];
deque<ll> q;
ll cnt;
ll tot;
int main(){
	cin >> n >> m >> k;
	for(ll i = 1;i <= n;i++){
		cin >> a[i];
	}
	sort(a+1,a+n+1);
	for(ll i = 1;i <= n;i++){
		q.push_back(a[i]);
	}
	ll m,x;
	for(ll i = 1;i <= m;i++){
		cin >> m;
		if(m == 1){
			cin >> x;
			tot+= x;
			while(!q.empty()){
				ll v = q.back();
				if(v+tot > k){
					q.pop_back();
				}else{
					break;
				}
			}
		} else if(m == 2){
			cin >> x;
			tot-= x;
			while(!q.empty()){
				ll v = q.front();
				if(v+tot > -k){
					q.pop_front();
				}else{
					break;
				}
			}			
		}else if(m == 3){
			cout << q.size() << endl;
		}
	}
    return 0;
}

2024/8/5 09:03
加载中...