思路:
建立陣列x,陣列y,存放x的座標和y的座標。
遍歷陣列x,y。檢視有沒有上下左右都有垃圾站的座標,查詢到後,再查詢四個角落有幾個垃圾站。
程式碼如下:
#include <stdio.h>
int main() {
int a0=0,a1=0,a2=0,a3=0,a4=0,b,i,j,k,z,n,d;
scanf("%d",&n);
int x[n],y[n];
for(i=0;i<n;i++){
scanf("%d%d",&x[i],&y[i]);
}
for(i=0;i<n;i++){
j=x[i];
k=y[i];
for(d=0,z=0;d<n;d++){
if(x[d]==j&&y[d]==k+1)
z++;
if(x[d]==j&&y[d]==k-1)
z++;
if(x[d]==j+1&&y[d]==k)
z++;
if(x[d]==j-1&&y[d]==k)
z++;}
if(z==4){
for(d=0,b=0;d<n;d++){
if(x[d]==j+1&&y[d]==k+1)
b++;
if(x[d]==j-1&&y[d]==k-1)
b++;
if(x[d]==j+1&&y[d]==k-1)
b++;
if(x[d]==j-1&&y[d]==k+1)
b++;
}
switch(b){
case 0:a0++;break;
case 1:a1++;break;
case 2:a2++;break;
case 3:a3++;break;
case 4:a4++;break;
}
}
}
printf("%d\n%d\n%d\n%d\n%d",a0,a1,a2,a3,a4);
return 0;
}