#include <bits/stdc++.h>
using namespace std;
int n, m, k;
int rect[1000 + 7][1000 + 7];
bool lose(int x, int y) {
  if (rect[x][y] && rect[x - 1][y] && rect[x - 1][y + 1] && rect[x][y + 1])
    return true;
  if (rect[x][y] && rect[x - 1][y] && rect[x - 1][y - 1] && rect[x][y - 1])
    return true;
  if (rect[x][y] && rect[x][y - 1] && rect[x + 1][y - 1] && rect[x + 1][y])
    return true;
  if (rect[x][y] && rect[x][y + 1] && rect[x + 1][y + 1] && rect[x + 1][y])
    return true;
  return false;
}
int main() {
  int i, j;
  scanf("%d %d %d", &n, &m, &k);
  memset(rect, 0, sizeof(rect));
  for (i = 1; i <= k; i++) {
    int x, y;
    scanf("%d %d", &x, &y);
    rect[x][y] = 1;
    if (lose(x, y)) {
      printf("%d", i);
      break;
    }
  }
  if (i == k + 1) printf("0");
  return 0;
}
