#include<bits/stdc++.h>
using namespace std;
int n,m,t,fx,fy,tx,ty,sx,sy,x,y,s,dir[4][2]={0,1,0,-1,1,0,-1,0},mp[15][15],vis[15][15];
void dfs(int x,int y)
{
if((x==fx)&&(y==fy))
{
s++;
return ;
}
for(int i=0;i<4;i++)
{
tx=x+dir[i][0];
ty=y+dir[i][1];
if((mp[tx][ty]==0)&&(!vis[tx][ty]))
{
vis[tx][ty]=1;
dfs(tx,ty);
vis[tx][ty]=0;
}
}
}
int main()
{
cin>>n>>m>>t;
cin>>sx>>sy>>fx>>fy;
for(int i=0;i<=n+1;i++)
mp[i][0]=mp[i][m+1]=1;
for(int i=0;i<=m+1;i++)
mp[0][i]=mp[n+1][i]=1;
while(t--)
{
cin>>x>>y;
mp[x][y]=1;
}
vis[sx][sy]=1;
dfs(sx,sy);
cout<<s;
return 0;
}
WA50分,哪里错了?