func_code_string: #include <bits/stdc++.h>   using namespace std;   const int MAXN = 600;   int mat[2000][2000];   int quad[20][20];   int cont[20][20];   int main() {     int n, m;     scanf( %d%d , &n, &m);     int foi = 0;     int result = -1;     for (int i = 0; i < m; i++) {       int x, y;       for (int h = 0; h < 5; h++) {         for (int k = 0; k < 5; k++) {           quad[h][k] = 0;           cont[h][k] = 0;         }       }       scanf( %d%d , &x, &y);       x--;       y--;       mat[x][y]++;       int maiorX = max(x - 2, 0);       int menorX = min(x + 2, n - 1) + 1;       int maiorY = max(y - 2, 0);       int menorY = min(y + 2, n - 1) + 1;       for (int h = maiorX; h < menorX; h++) {         for (int k = maiorY; k < menorY; k++) {           if (mat[h][k]) {             cont[h - maiorX][k - maiorY]++;             if (h - maiorX - 1 >= 0) {               cont[h - maiorX][k - maiorY] += cont[h - maiorX - 1][k - maiorY];             }           }         }       }       int pode = 0;       for (int h = 0; h < 5; h++) {         int soma = 0;         for (int k = 0; k < 5; k++) {           if (cont[h][k] >= 3) {             soma++;             if (soma >= 3) {               pode = 1;             }           } else {             soma = 0;           }         }       }       if (foi == 0 && pode) {         result = i + 1;         foi = 1;       }     }     printf( %d n , result);     return 0;   }   