#include <bits/stdc++.h>
int findmax(int a[501][501], int n, int m, int x, int b[501]) {
  int max = 0, consec = 0, i, j, maxrest = 0;
  for (i = 1; i <= n; i++) {
    if (i != x) {
      if (b[i] > maxrest) maxrest = b[i];
    }
  }
  for (i = 1; i <= m; i++) {
    if (a[x][i] == 1) {
      consec++;
      if (consec > max) max = consec;
    } else {
      consec = 0;
    }
  }
  b[x] = max;
  if (max < maxrest) max = maxrest;
  return max;
}
int main() {
  int n, m, q, a[501][501], b[501], i, j, x, y, initialmax = 0, consec = 0;
  scanf("%d", &n);
  scanf("%d", &m);
  scanf("%d", &q);
  for (i = 1; i <= n; i++) {
    for (j = 1; j <= m; j++) {
      scanf("%d", &a[i][j]);
    }
  }
  for (i = 1; i <= n; i++) {
    consec = 0;
    initialmax = 0;
    for (j = 1; j <= m; j++) {
      if (a[i][j] == 1) {
        consec++;
        if (consec > initialmax) initialmax = consec;
      } else {
        consec = 0;
      }
    }
    b[i] = initialmax;
  }
  for (i = 0; i < q; i++) {
    scanf("%d", &x);
    scanf("%d", &y);
    if (a[x][y] == 0)
      a[x][y] = 1;
    else
      a[x][y] = 0;
    printf("%d\n", findmax(a, n, m, x, b));
  }
  return 0;
}
