#include #include int time,atx,aty,n,m; char map[26][26]; bool flag; void dfs(int x,int y,int t) { if(x<0||x>=n||y<0||y>=m) return; if(flag==true||(t==0&&x==atx&&aty==y)) { flag=true; return; } int temp=t-abs(x-atx)-abs(y-aty); if(temp<0 || temp&1) return; map[x][y]='X'; if(map[x+1][y]!='X') { dfs(x+1,y,t-1); if(flag) return; } if(map[x][y+1]!='X') { dfs(x,y+1,t-1); if(flag) return; } if(map[x-1][y]!='X') { dfs(x-1,y,t-1); if(flag) return; } if(map[x][y-1]!='X') { dfs(x,y-1,t-1); if(flag) return; } map[x][y]='.'; } int main() { int i,j,x,y,wall; while(scanf("%d%d%d",&n,&m,&time)&&(n!=0||m!=0||time!=0)) { flag=false; wall=0; for(i=0;i