#include<bits/stdc++.h>
using namespace std;
const int N = 20;
int n,m;
int sx,sy,fx,fy;
int a[N][N];
int way[4][2] = {{0,-1},{-1,0},{0,1},{1,0}};
int member[N][3];
bool wj=true;
void dfs(int x, int y, int sum){
member[sum][1] = x; member[sum][2] = y;
if(x==fx && y==fy){
wj=false;
for(int i=0; i<=sum; i++){
printf("(%d,%d)", member[i][1], member[i][2]);
if(i<sum) printf("->");
}
cout<<endl;
return;
}
for(int i=0;i<4;i++){
int dx = x+way[i][0]; int dy = y+way[i][1];
if(a[dx][dy] == 1){
a[dx][dy] = 0;
dfs(dx, dy, sum+1);
a[dx][dy] = 1;
}
}
}
int main(){
memset(a, 0, sizeof(a));
cin>>n>>m;
for(int i=1; i<=n; i++){
for(int j=1; j<=m; j++){
cin>>a[i][j];
}
}
cin>>sx>>sy;
cin>>fx>>fy;
dfs(sx, sy, 0);
if(wj) cout<<-1<<endl;
return 0;
}
35分,剩下WA
各位dalao看一下哪里有问题啊