#include <iostream>
void fill_mat(int* arr, int n) {
int k = 0;
for(int i = 0; i < n; i++) {
if(i < (n/2+n%2))
arr[i*n+i] = arr[(n-1-i)*n+i] = ++k;
else
arr[i*n+i] = arr[(n-1-i)*n+i] = --k;
}
}
int main(void) {
const int N = 17;
int mat[N][N] = {{0}};
fill_mat((int*)mat, N);
for(int r = 0; r < N; r++) {
for(int c = 0; c < N; c++)
std::cout << mat[r][c] << " ";
std::cout.put('\n');
}
return 0;
}