#include using namespace std; int n, d, p, x, y, mat[500][500], dl = 1; int main() { freopen("gerrymandering.in", "r", stdin); freopen("gerrymandering.out", "w", stdout); cin >> n >> d >> p; x = 0; for(int q = 1; q <= d; q++) { for(int i = 0; i < n * n / d; i++) { mat[y][x] = q; y += dl; if(y == -1) { dl *= -1; y = 0; x++; } else if(y == n) { dl *= -1; y = n - 1; x++; } } } for(int i = 0; i < p; i++) { for(int j = 0; j < n; j++) { for(int k = 0; k < n; k++) { cout << mat[j][k] << " "; } cout << endl; } } return 0; } /* 5 5 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 */