#include<iostream>
#include<set>
using namespace std;
int main(){
int count[5] = { 0 };
int n;
cin >> n;
set<pair<int, int> > node;
for (int i = 0; i < n; i++)
{
int x, y;
cin >> x >> y;
node.insert(make_pair(x,y));
}
for (auto it = node.begin(); it != node.end();it++)
{
int coun = 0;
auto elem = node.end();
auto left = node.find(make_pair(it->first-1,it->second));
auto right = node.find(make_pair(it->first + 1, it->second));
auto down = node.find(make_pair(it->first, it->second - 1));
auto up = node.find(make_pair(it->first, it->second + 1));
if (left != elem&&right != elem&&down != elem&&up != elem)
{
auto l_u = node.find(make_pair(it->first - 1, it->second + 1));
auto r_u = node.find(make_pair(it->first + 1, it->second + 1));
auto l_d = node.find(make_pair(it->first - 1, it->second - 1));
auto r_d = node.find(make_pair(it->first + 1, it->second - 1));
if (l_u != elem)
coun++;
if (l_d != elem)
coun++;
if (r_u != elem)
coun++;
if (r_d != elem)
coun++;
count[coun]++;
}
}
for (int i = 0; i < 5; i++)
cout << count[i] << endl;
return 0;
}
ccf 垃圾回收站选址 2019_12_02
最新推荐文章于 2022-01-15 15:00:31 发布