这题就是告诉你一个房间进进出出的情况,问房间最少容量为多少
标记进入的人,进就++, 出来则要考虑,标记过的,则不用处理,没标记过的,说明人就在里面,总人数就要++
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<queue>
#define Max(a,b) (a)>(b)?(a):(b)
#define Min(a,b) (a)<(b)?(a):(b)
const int maxn = 1000010;
using namespace std;
int vis[maxn];
int Abs(int x)
{
if(x<0)return -x;
return x;
}
int main()
{
int n,num,ans,jia,jian;
char s[10];
while(scanf("%d",&n)!=EOF)
{
memset(vis,0,sizeof(vis));
queue<int>que;
ans = jia = jian=0;
for(int i = 0; i < n; i++)
{
scanf("%s%d",s,&num);
if(s[0]=='+')
{
vis[num] = 1;
jia++;
if(jia>ans)
ans = jia;
}
else
{
if(!vis[num])
ans++;
else
{
vis[num] = 0;
jia--;
}
}
}
printf("%d\n",ans);
}
return 0;
}