50分求助
上代码!
#include<bits/stdc++.h>
using namespace std;
int n,m,t,sx,sy,ex,ey,ans,x,y;
int dx[4]={0,0,-1,1};
int dy[4]={1,-1,0,0};
char mp[205][205];
void dfs(int sx,int sy){
if(sx==ex&&sy==ey){
ans++;
return;
}
mp[sx][sy]='#';
for(int i=0;i<4;i++){
int x2=sx+dx[i];
int y2=sy+dy[i];
if(x2>=1&&x2<=n&&y2>=1&&y2<=m&&mp[x2][y2]=='.'){
dfs(x2,y2);
}
}
}
int main(){
memset(mp,'.',sizeof(mp));
cin>>n>>m>>t;
cin>>sx>>sy>>ex>>ey;
for(int i=1;i<=t;i++){
cin>>x>>y;
mp[x][y]='#';
}
dfs(sx,sy);
cout<<ans;
return 0;
}
各位大佬帮忙看看,在线等,急!