求助TLE的原因
查看原帖
求助TLE的原因
587821
sunnyyyy楼主2022/3/13 15:47
###请问这个大概50行的码为什么会出现两个RE 三个TLE?
#include<stdio.h>
int n,m,k,x,y;
int count=0;
int a[1000][1000]={0};
int main()
{
  scanf("%d %d %d",&n,&m,&k);
  for(int i=1;i<=m;i++)
  {
    scanf("%d %d",&x,&y);
    a[x][y]=1;
  }
  for(int x=1;x<=n;x++)
  {
    for(int y=1;y<=n;y++)
    {
      if(a[x][y]==1)
      {
       a[x-2][y]=a[x+2][y]=1;
       a[x-1][y-1]=a[x-1][y]=a[x-1][y+1]=1;
       for(int j=y-2;y<=y+2;y++) a[x][j]=1;
       a[x+1][y-1]=a[x+1][y]=a[x+1][y+1]=1;
       }
     }
    }
  for(int l=1;l<=k;l++)
  {
    scanf("%d %d",&x,&y);
    a[x][y]=1;
  }
  for(int x=1;x<=n;x++)
  for(int y=1;y<=n;y++)
  {
    if(a[x][y]==1)
    {
      for(int i=x-2;i<=x+2;i++)
      for(int j=y-2;j<=y+2;j++)
         a[i][j]=1;
    }
   }
   for(int x=1;x<=n;x++)
   {
     for(int y=0;y<n;y++)
     {
       if(a[x][y]==0) count++;
     }
    }
   printf("%d",count);
   return 0;
}
2022/3/13 15:47
加载中...