int printf(); void *calloc(); int atoi(); int Q; int N; int **t; print() { int x; int y; for (y=0; y= 0) r = r + t[x+i][y-i]; if (x-i >= 0 & y+i < Q) r = r + t[x-i][y+i]; if (x-i >= 0 & y-i >= 0) r = r + t[x-i][y-i]; } return r; } go(int y) { int x; if (y == Q) { print(); N++; return 0; } for (x=0; x= 2) Q = atoi(av[1]); t = calloc(Q, sizeof(int *)); for (i=0; i