#include<iostream>
#include<stdio.h>
/*
1/n个数据,a[1000][2]
2/输入数据行,a[i][0],a[i][1],1<=i<=n
3/判断四周是否有垃圾,b[1000]数组
4/判断对角线,count,c[5]
5/输出
6/n<1000
*/
int main(){
int n,a[1000][2];
int b[1000]={0}, c[5]={0};
scanf("%d",&n);
for(int i=0;i<n;++i){
scanf("%d%d",&a[i][0],&a[i][1]);
}
for(int i=0;i<n;++i){
for(int j=i+1;j<n;++j){
if((a[i][0]==a[j][0]&&a[i][1]==a[j][1]+1)
||(a[i][0]==a[j][0]&&a[i][1]==a[j][1]-1)
||(a[i][0]==a[j][0]-1&&a[i][1]==a[j][1])
||(a[i][0]==a[j][0]+1&&a[i][1]==a[j][1]))//每个坐标值和其他所有坐标值都比较一遍
{
b[i]++;//比较的双方同时加
b[j]++;
} //判断四周是否有垃圾,b[1000]数组
}
}
//对角线
for(int i=0;i<n;++i){
int count=0;
if(b[i]==4){
for(int j=0;j<n;++j){
if((a[i][0]==a[j][0]+1&&a[i][1]==a[j][1]+1)||(a[i][0]==a[j][0]+1&&a[i][1]==a[j][1]-1)||
(a[i][0]==a[j][0]-1&&a[i][1]==a[j][1]+1)||(a[i][0]==a[j][0]-1&&a[i][1]==a[j][1]-1))
count++;
} //有多余遍历但无伤大雅
c[count]++;
}
}
for(int i=0;i<5;++i){
printf("%d\n",c[i]);
}
return 0;
}
201912-2回收站选址
猜你喜欢
转载自blog.csdn.net/weixin_46148956/article/details/106176673
今日推荐
周排行