#include <stdio.h> int main() { int n, i, j, step = 2, sum = 1, arr[1000][1000] = { 0 }; scanf("%d", &n); arr[0][0] = 1; while (sum < n) { if (sum % 2) { for (i = 0; i <= sum; i++) { arr[i][sum-i] = step; step++; } } else { for (i = sum; i >= 0; i--) { arr[i][sum-i] = step; step++; } } sum++; } while (sum <= 2 * (n - 1)) { if (sum % 2) { for (i = sum-n+1; i <= n-1; i++) { arr[i][sum-i] = step; step++; } } else { for (i = n - 1; i >= sum - n + 1; i--) { arr[i][sum-i] = step; step++; } } sum++; } for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { printf("%d ", arr[i][j]); } printf("\n"); } return 0; }