#include <bits/stdc++.h>
using namespace std;
char c;
int tx,n,m,ty;
int a[1001][2];
int dir[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
int mp[1001][1001];
int vis[1001][1001];
int b,d,i,j,p,lx,ly,ans=1<<30,k;
void dfs(int x,int y){
if(x==n&&y==m&&k==0) {k=1;cout<<"1 1"<<"\n";for(i=1;i<=p;++i)if(mp[a[i][0]][a[i][1]]!='*'&&a[i][0]!=0&&a[i][1]!=0)cout<<a[i][0]<<" "<<a[i][1]<<"\n";}
else if(x!=0&&y!=0) for(int i=0;i<4;++i){
// cout<<1;
int nx=x+dir[i][0];
int ny=y+dir[i][1];
if(nx>=1&&ny>=1&&nx<=n&&ny<=m&&mp[nx][ny]>0&&!vis[nx][ny]){
vis[nx][ny]=1;
p++;
a[p][0]=nx;
a[p][1]=ny;
//cout<<i;
// cout<<nx<<" "<<ny;
dfs(nx,ny);
a[p][0]=a[p][1]=0;
--p;
vis[nx][ny]=0;
//cout<<1<<" ";
}
}
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>c;
if(c!='*')mp[i][j]=1;
}
}
dfs(1,1);
//cout<<p;
return 0;
}
这里是评测记录评测记录