#include <stdio.h>
#include <stdlib.h>
int PrX[4]={-1,0,1,0};
int PrY[4]={0,1,0,-1};
int T[10][10];
int n,m;
int Moze(int x,int y)
{
    if (x>=1 && x<=n && y>=1 && y<=m)
        return (T[x][y]==0);
    return 0;
}
void Oboji (int x,int y,int boja)
{
    int i;
    T[x][y]=boja;
    for (i=1;i<=4;i++)
        if (Moze(x+PrX[i],y+PrY[i]))
        Oboji(x+PrX[i],y+PrY[i],boja);
}
int main()
{
    int i,j,boja=0;
    int a[100],b[100],k;
    scanf("%d %d %d",&n,&m,&k);
    for (i=1;i<=n;i++)
        for (j=1;j<=m;j++)
            T[i][j]=0;
    for (i=1;i<=k;i++)
        {
            scanf("%d",&a[i]);
            scanf("%d",&b[i]);
            T[a[i]][b[i]]=1;
        }
    for (i=1;i<=n;i++)
        for (j=1;j<=m;j++)
            if (T[i][j]==0)
            Oboji(i,j,++boja);
    printf("%d ",boja);
    return 0;
}