题目大意:给出n*m的棋盘,初始为全白,每次在上面使一个格子变黑,问多少次的时候使得棋盘上出现2×2的黑格
思路:模拟
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include<queue> 5 #define maxn 900000 6 #define LL long long 7 using namespace std; 8 bool map[1001][1001]; 9 int main() 10 { 11 int n,m,k,ans=0,x,y; 12 scanf("%d%d%d",&n,&m,&k); 13 for(int i=1;i<=k;i++) 14 { 15 scanf("%d%d",&x,&y); 16 map[x][y]=1; 17 if(map[x-1][y]&&map[x-1][y-1]&&map[x][y-1]){ans=i;break;} 18 if(map[x+1][y]&&map[x+1][y+1]&&map[x][y+1]){ans=i;break;} 19 if(map[x-1][y]&&map[x-1][y+1]&&map[x][y+1]){ans=i;break;} 20 if(map[x+1][y]&&map[x+1][y-1]&&map[x][y-1]){ans=i;break;} 21 } 22 printf("%d",ans); 23 return 0; 24 }