思路
用map存每行,累加mp[k-Rol[i]]
#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N=200005;
int Col[N];
int Rol[N];
signed main()
{
int n,m,q,k;
cin>>n>>m>>q>>k;
map<int,int> mp;
while(q--)
{
int op;
int x;
cin>>op>>x;
if(op==1)
{
Rol[x]++;
mp[Rol[x]]++;
}
if(op==2) Col[x]++;
}
int ans=n*m;
for(int i=1;i<=n;i++)
{
if(Rol[i]==0) ans--;
}
for(int i=1;i<=n;i++)
{
if(k>=Col[i]) ans-=mp[k-Col[i]];
}
cout<<ans;
return 0;
}