//KNIGHTfS TOUR // ‰Û‘è—p3~4 #include #define M 3 #define N 4 int array[M][N]; int count; void print(void) { int i,j; for(i=0;i=M) return; if(y<0 || y>=N) return; if(array[x][y]) return; //printf("%d\n", cnt); array[x][y]=cnt; cnt++; if(cnt>M*N){ count++; printf("[%d]\n", count); print(); } check(x+1, y+2, cnt); check(x+1, y-2, cnt); check(x-1, y+2, cnt); check(x-1, y-2, cnt); check(x+2, y+1, cnt); check(x+2, y-1, cnt); check(x-2, y+1, cnt); check(x-2, y-1, cnt); array[x][y]=0; } int main(void) { int i,j; for(i=0;i