代码:
#include<stdio.h>
int main(void){
int n;
int i,j;
int flag,flagScore;
int result[5]={0};
scanf("%d",&n);
int array[n][2];
for(i=0;i<n;i++){
scanf("%d%d",&array[i][0],&array[i][1]);
}
//判断是否为可建回收站
for(i=0;i<n;i++){
flag=0;//利用flag记录上下左右四个位置是否有垃圾
for(j=0;j<n;j++){
if(array[i][0]+1==array[j][0]&&array[i][1]==array[j][1]){
flag++;
}else if(array[i][0]-1==array[j][0]&&array[i][1]==array[j][1]){
flag++;
}else if(array[i][0]==array[j][0]&&array[i][1]+1==array[j][1]){
flag++;
}else if(array[i][0]==array[j][0]&&array[i][1]-1==array[j][1]){
flag++;
}
}
//都有垃圾为回收站
if(flag==4){
//判断得分
flagScore=0; //记录分数
for(j=0;j<n;j++){
if(array[i][0]+1==array[j][0]&&array[i][1]+1==array[j][1]){
flagScore++;
}else if(array[i][0]-1==array[j][0]&&array[i][1]-1==array[j][1]){
flagScore++;
}else if(array[i][0]+1==array[j][0]&&array[i][1]-1==array[j][1]){
flagScore++;
}else if(array[i][0]-1==array[j][0]&&array[i][1]+1==array[j][1]){
flagScore++;
}
}
result[flagScore]++;//存储个数
}
}
for(i=0;i<5;i++){
printf("%d\n",result[i]);
}
return 0;
}