帮忙debug一下
#include <bits/stdc++.h>
using namespace std;
bool pd;
int n ,m ,a[20][20] ,x2 ,y2 ,dx[4] = {0,-1,0,1} ,dy[4] = {-1,0,1,0};
int xy[114514][2];
bool t[20][20];
int sc(int t)
{
for(int i=1;i<t-1;i++)printf("(%d,%d)->",xy[q][1],xy[q][2]);
printf("(%d,%d)\n",x2,y2);
}
void dfs(int i,int j,int t){
if(!a[i][j])return;
if(i==x2&&j==y2){
pd=1;
sc(t);
return;
}
xy[t][1]=i;
xy[t][2]=j;
a[i][j]=0;
dfs(i,j - 1,t + 1);
dfs(i - 1,j,t + 1);
dfs(i,j + 1,t + 1);
dfs(i + 1,j,t + 1);
xy[t][1] = 0;
xy[t][2] = 0;
a[i][j] = 1;
}
int main(){
int x1 ,y1;
cin>>n>>m;
for(int i = 1;i <= n; i++) {
for(int j = 1;j <= m; j++){
scanf("%d",&a[i][j]);
}
}
cin>>x1>>y1>>x2>>y2;
dfs(x1,y1,1);
if(pd == 0)cout<<-1;
return 0;
}
玄一关