水过了,,,,
听说是一道线段树的题,,,但是这里没有用线段树做,就是在输入的时候就对他排序,删除的时候也按序删除(显然),就酱紫。。。。
原先不知道WA在哪里了,真的弄了好久。然后在一个阳光尚好的早上,在一整排的AC中。。。。终于A掉了。
#include <stdio.h>
#define maxn 100010
#define ll __int64
int que[maxn];
int main()
{
int n;
char op[5];
int x;
while(scanf("%d",&n)!=EOF)
{
int i,j,k;
int top=0;
while(n--)
{
scanf("%s",op);
if(op[0]=='a')
{
scanf("%d",&x);
for(i=top;i>0;i--)
{
if(que[i-1]>x) que[i]=que[i-1];
else break;
}
que[i]=x;
top++;
}
else if(op[0]=='d')
{
scanf("%I64d",&x);
for(i=top-1;i>=0;i--)
{
if(que[i]==x)
{
for(j=i;j<top-1;j++)
que[j]=que[j+1];
top--;
break;
}
}
}
else
{
ll sum,tmp;
sum=tmp=0;
for(i=2;i<top;i+=5)
{
tmp=que[i];
sum+=tmp;
}
printf("%I64d\n",sum);
}
}
}
return 0;
}