#include<bits/stdc++.h> using namespace std; int n,m,l,c[11][3]; char a[11][11]; int fx[4]={0,1,0,-1}; int fy[4]={1,0,-1,0}; bool f[11][11]; void dfs(int x,int y,int k){ // a[x][y]='#'; for(int i=0;i<=3;i++){ int tx=x+fx[i]; int ty=y+fy[i]; if(tx>=0&&tx<=n&&ty>=0&&ty<=m&&a[tx][ty]=='o'&&f[tx][ty]==false){ c[k][1]=tx; c[k][2]=ty; f[tx][ty]=true; if(tx==n&&ty==m){ l++; cout<<l<<":"; for(int i=1;i<=k;i++){ if(i!=k){ cout<<c[i][1]<<","<<c[i][2]<<"->"; } else cout<<c[k][1]<<","<<c[k][2]; } cout<<endl; // for(int i=1;i<=n;i++){ // for(int j=1;j<=m;j++){ // cout<<f[i][j]; // } // cout<<endl; // } } else{ dfs(tx,ty,k+1); } f[tx][ty]=false; } } } int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>a[i][j]; } } c[1][1]=1; c[1][2]=1; f[1][1]=true; dfs(1,1,2); if(f[n][m]!=1){ cout<<"no"; } return 0; } /************************************************************** Problem: 1411 User: chenjingqi Language: C++ Result: Wrong Answer ****************************************************************/