#include<stdio.h>
int maze[8][8]= {{0,0,0,0,0,0,0,0},{0,1,1,1,1,0,1,0},{0,0,0,0,1,0,1,0},{0,1,0,0,0,0,1,0},{0,1,0,1,1,0,1,0},{0,1,0,0,0,0,1,1},{0,1,0,0,1,0,0,0},{0,1,1,1,1,1,1,0}},fx[4]= {1,-1,0,0},fy[4]= {0,0,-1,1};
int i,j,k,total;
void search(int i,int j);
void Out();
int check(int i,int j,int k);
int main()
{ int total=0;
maze[1][1]=3;
search(1,1);
return 0;
}
void search(int i,int j)
{ int k,newi,newj;
for(k=1; k<=4; k++)
if(check(i,j,k)==1)
{ newi=i+fx[k];
newj=j+fy[k];
maze[newi][newj]=3;
if(newi==8&&newj==8)
Out();
else
search(newi,newj);
}
maze[i][j]=2;
}
void Out()
{ int i,j;
for(i=1; i<=8; i++)
{ printf("\n");
for(j=1; j<=8; j++)
if(maze[i][j]==3)
{ printf("V");
total++;
}
else
printf("*");
}
printf("Total is %d\n",total);
}
int check(int i,int j,int k)
{ int flag=1;
i=i+fx[k];
j=j+fy[k];
if(i<1||i>8||j<1||j>8)
flag=0;
else if(maze[i][j]!=0)
flag=0;
return flag;
}