为啥我的过不了啊,我感觉我的思路没问题,写出来却过不了,去看别人的题解,感觉和我的一模一样啊,我怎么对比都找不到出入,我做题老是这样,让我很痛苦啊,心里很难受,真的感觉跟别人的是一样的,找不到不同。
#include<bits/stdc++.h>
using namespace std;
bool in(int,int);
int dir[4][2]={{-1,0},{1,0},{0,-1},{0,1}};
int N,M,T,Sx,Sy,Ex,Ey,res=0;
bool mmap[100][100];
bool vis[100][100];
bool in(int x,int y){
return (x>=0 && x<N && y>=0 && y<M);
}
void dfs(int x,int y){
if(x == Ex && y == Ey){
res++;
return;
}
for(int i=0;i<4;i++){
int dx=x+dir[i][0];
int dy=y+dir[i][1];
if(in(dx,dy) && !mmap[dx][dy] && !vis[dx][dy]){
vis[dx][dy]=1;
dfs(dx,dy);
vis[dx][dy]=0;
}
}
}
int main(){
cin >> N >> M >> T >> Sx >> Sy >> Ex >> Ey;
for(int i=0;i<T;i++){
int dx,dy;
cin >> dx >> dy;
mmap[dx][dy]=true;
}
vis[Sx][Sy]=true;
dfs(Sx,Sy);
cout << res;
return 0;
}