#include <bits/stdc++.h>
using namespace std;
const int N=1000+50;
int x[N],y[N];
int cnt[10];
int loc[10];
int n;
int nx,ny;
unordered_map<int,unordered_map<int,int>>m;
int jud(int x,int y){
if(m[x][y+1]&&m[x][y-1]&&m[x+1][y]&&m[x-1][y]){
return 1;
}
return 0;
}
int score(int x,int y){
return m[x+1][y+1]+m[x+1][y-1]+m[x-1][y+1]+m[x-1][y-1];
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>nx>>ny;
x[i]=nx,y[i]=ny;
m[nx][ny]++;
}
for(int i=1;i<=n;i++){
if(jud(x[i],y[i])){
cnt[score(x[i],y[i])]++;
}
}
for(int i=0;i<=4;i++){
cout<<cnt[i]<<endl;
}
return 0;
}
同时注意一下unordered map的用法就可以了