感觉跟其中一个题解一样,但就是看不出来哪错了: 第一个测试点:
100 1 1
50 50
3 3
我的错误输出:9991(对着代码走根本想不通为什么只标记了9个1)
#include<bits/stdc++.h>
using namespace std;
int main(){
int dx[13]={2,0,-2,0,1,1,1,0,0,0,-1,-1,-1},dy[13]={0,2,0,-2,0,1,-1,1,0,-1,0,1,-1};
int n,m,k;
int countt=0;
int g[110][110];
memset(g,-1,sizeof (g));
cin>>n>>m;
while (m-- ){
int x,y;
cin>>x>>y;
for(int i=0;i<13;i++){
int nx=0,ny=0;
nx=x+dx[i];
ny=y+dy[i];
g[nx][ny]=1;
}
}
while(k--){
int o, p;
cin>>o>>p;
for(int i=o-2;i<=o+2;i++){
for(int j=p-2;j<=p+2;j++){
g[i][j]=1;
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(g[i][j]==-1)
countt++;
}
}
cout<<countt;
}