/* From Wirth's "Knight's Tour" Pascal Program * crude translation to ANSI C by Kevin Karplus */ #include #define n 5 #define nsq 25 int a[8]={2,1,-1,-2,-2,-1, 1, 2}; int b[8]={1,2, 2, 1,-1,-2,-2,-1}; int h[n][n]; int try(int i, int x, int y) { int k,u,v; for (k=0; k<8; k++) { u = x + a[k]; v = y + b[k]; if(0<=u && u= nsq) return 1; if (try(i+1,u,v)) return 1; h[u][v] = 0; } } } return 0; } int main() { int i,j; for(i=0; i