rt,思路比较简洁,有可能是思路错了,代码如下
#include<bits/stdc++.h>
using namespace std;
int n, cnt;
map<int, int> mk;
map<pair<int, int>, int> mb;
int main()
{
cin >> n;
for(int i = 1; i <= n; i++)
{
int x, y, z;
cin >> x >> y >> z;
if(x == 1)
{
cnt++;
mk[y]++;
mb[make_pair(y, z)]++;
}
if(x == 2)
{
cout << cnt - mk[y] << endl;
}
if(x == 3)
{
int ovl = mb[make_pair(y, z)];
mb[make_pair(y, z)] -= ovl;
mk[y] -= ovl;
cnt -= ovl;
}
}
return 0;
}