我的代码:
#include <bits/stdc++.h>
using namespace std;
int n,m,k,t,x,y,i;
int main()
{
deque<long long> q;
scanf("%d%d%d",&n,&m,&k);
while (n--)
{
scanf("%d",&t);
q.push_back(t);
}
sort(q.begin(),q.end());
while (m--)
{
scanf("%d",&x);
if (x==3) printf("%d\n",q.size());
else
{
scanf("%d",&y);
if (x==2) y*=-1;
for (i=0;i<q.size();i++)
{
q[i]+=y;
}
while (q.front()<-1*k && !q.empty()) q.pop_front();
while (q.back()>k && !q.empty()) q.pop_back();
}
}
return 0;
}