80分 第一个检测点没过
#include<iostream>
using namespace std;
int main()
{
int i,j,n,m,k,x,y,l,p,sum=0;
cin>>n>>m>>k;
int arr[n+4][n+4];//多输入 防止越界
for(i=0;i<n+4;i++)
{
for(j=0;j<n+4;j++)
arr[i][j]=0;
}
for(i=0;i<m;i++)//火把
{
cin>>x>>y;
arr[x+1][y+1];
for(l=0;l<5;l++)
arr[x+1][y-1+l]=1,arr[x-1+l][y+1]=1;
arr[x][y]=1;arr[x][y+2]=1;
arr[x+2][y]=1;arr[x+2][y+2]=1;
}
for(i=0;i<k;i++)//萤石
{
cin>>x>>y;
for(l=0;l<5;l++)
{
for(p=0;p<5;p++)
{
arr[x-2+l][y-2+p]=1;
}
}
}
for(i=2;i<n+2;i++)//除去越界的
{
for(j=2;j<n+2;j++)
{
if(arr[i][j]==0)
sum++;
}
}
cout<<endl;
}
cout<<sum;
}