#include <cmath> #include <cstdio> #include <vector> #include <iostream> #include <algorithm> using namespace std; int n; int i; int j; vector<vector<int>> B; void search(int r, int c, int s); void next(int rn, int cn, int s) { if (0<=rn && rn<n && 0<=cn && cn<n) { int &Bn = B[rn][cn]; if (Bn == -1 || Bn > s) { Bn = s; search(rn, cn, s+1); } } } void search(int r, int c, int s) { next(r+i, c+j, s); next(r-i, c+j, s); next(r-i, c-j, s); next(r+i, c-j, s); next(r+j, c+i, s); next(r-j, c+i, s); next(r-j, c-i, s); next(r+j, c-i, s); } int main() { cin >> n; for (i = 1; i < n; ++i) { for (j = 1; j < n; ++j) { B = vector<vector<int>>(n,vector<int>(n, -1)); search(0,0,1); cout << B[n-1][n-1] << (j<n-1?' ':'\n'); } } return 0; }