我擦
#include <iostream>
#define WALL -1
#define FINDED 1
#define NOTFINDED 0
int n,m,sx,sy,fx,fy,t;
int map[10001][6];
int sum = 0;
void dfs(int x,int y){
if(x==fx&&y==fy){
sum++;
return;
}
if(x>n||x<1||y>m||y<1||map[x][y]==FINDED||map[x][y]==WALL)
return;
else{
map[x][y] = FINDED;
dfs(x-1,y);
dfs(x+1,y);
dfs(x,y+1);
dfs(x,y-1);
map[x][y] = NOTFINDED;
}
}
int main(){
std::cin>>n>>m>>t
>>sx>>sy>>fx>>fy;
for(int i=0;i<t;i++) {
int tx,ty;
std::cin>>tx>>ty;
map[tx][ty] = WALL;
}
dfs(sx,sy);
std::cout<<sum;
return 0;
}
点6挂了