#include #define MAX 20001 int main (void) { int i,j,vysledek; int x,y,n; int dx,dy; char radky[MAX]; char sloupce[MAX]; char leva[2*MAX]; char prava[2*MAX]; while (1) { scanf("%d %d %d", &x, &y, &n); if ( x == y && y == n && n == 0) break; /* nulovani */ vysledek = 0; for (i = 0; i < MAX; i++) { radky[i] = '0'; sloupce[i] = '0'; } for (i = 0; i < 2*MAX; i++) { leva[i] = '0'; prava[i] = '0'; } /* konec nulovani */ for (i = 0; i < n; i++) { scanf("%d %d",&dx,&dy); sloupce[dx] = '1'; radky[dy] = '1'; leva[dx-dy + MAX-1] = '1'; prava[dx+dy ] = '1'; } for (i=1;i <= y;i++) { if (radky[i] == '1') continue; for (j = 1;j <= x;j++) { if (sloupce[j] == '1') continue; if (leva[j-i + MAX - 1] == '1') continue; if (prava[i+j] == '1') continue; vysledek++; } } /* for (i=1;i <= y;i++) { for (j = 1;j <= x;j++) { if (radky[i] == '1' || sloupce[j] == '1' || leva[j-i + MAX -1] == '1' ||prava[i+j] == '1') printf("1 "); else printf("0 "); } printf("\n"); } */ /* ------------------ */ printf("%d\n",vysledek); } return (0); }