试题编号: 201912-2
试题名称: 回收站选址
时间限制: 1.0s
内存限制: 512.0MB
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<cctype>
using namespace std;
class laji{
public: long long x,y;
};
int main()
{
int n;cin>>n;long long x,y;
int m0,m1,m2,m3,m4;m0=m1=m2=m3=m4=0;int m=0;int s=0;
laji a[1000];
int i=0;
for(i=0;i<n;i++){
cin>>a[i].x>>a[i].y;
}
for(int j=0;j<n;j++){
m=0;s=0;
for(int k=0;k<n;k++){
if(a[k].x==(a[j].x-1)&&a[k].y==(a[j].y)) s++;
if(a[k].x==(a[j].x+1)&&a[k].y==(a[j].y)) s++;
if(a[k].x==(a[j].x)&&a[k].y==(a[j].y-1)) s++;
if(a[k].x==(a[j].x)&&a[k].y==(a[j].y+1)) s++;
}
if(s==4){
for(int k=0;k<n;k++){
if(a[k].x==(a[j].x-1)&&a[k].y==(a[j].y-1)) m++;
if(a[k].x==(a[j].x+1)&&a[k].y==(a[j].y-1)) m++;
if(a[k].x==(a[j].x-1)&&a[k].y==(a[j].y+1)) m++;
if(a[k].x==(a[j].x+1)&&a[k].y==(a[j].y+1)) m++;
}
switch(m){
case 0: m0++;break;
case 1: m1++;break;
case 2: m2++;break;
case 3: m3++;break;
default: m4++;break;
}
}
}
cout<<m0<<endl<<m1<<endl<<m2<<endl<<m3<<endl<<m4<<endl;
return 0;
}