#include <bits/stdc++.h>

using namespace std;

int N;
vector<int> V;
int S[105][105];

int main() {
    cin >> N;

    for (int i = 1; i <= N*N; i++) {
        int x;
        cin >> x;
        V.push_back(x);
    }

    sort(V.begin(), V.end(), greater<int>());

    for (int i = 0; i < N; i++) {
        S[i+1][i+1] = V[i];
    }
    int k = N-1;
    for (int i = 1; i <= N; i++) {
        for (int j = 1; j <= N; j++) {
            if (i == j)
                continue;
            S[i][j] = V[++k];
        }
    }

    for (int i = 1; i <= N; i++) {
        for (int j = 1; j <= N; j++)
            cout << S[i][j] << ' ';
        cout << endl;
    }
}