#include <stdio.h> int H,L; int qx,qy,zx,zy; int map[21][21]; int ax[4]={-1,0,1,0}; int ay[4]={0,-1,0,1}; void dfs(int x , int y , int step) { if(step>10) { return ; } int tx,ty; for(int i=0;i<4;i++) { if(map[x+ax[i]][y+ay[i]]==0) { tx=x+ax[i]; ty=y+ay[i]; while(map[tx][ty]==0) { tx=tx+ax[i]; ty=ty+ay[i]; } } } } void main() { freopen("in.txt","r",stdin); while(1) { scanf("%d %d",&L,&H); if(L==0&&H==0) break; for(int i=0;i<H;i++) { for(int j=0;j<L;j++) { scanf("%d",&map[i][j]); if(map[i][j]==2) { qx=i; qy=j; map[i][j]=0; } if(map[i][j]==3) { zx=i; zy=j; } } } dfs(qx,qy,0); } }