#include <iostream>
using namespace std;
int main() {
int n;
cin >> n; // citim dimensiunea matricei
int matrice[6][6]; // declarăm matricea (maxim 5x5)
int suma[6]; // array pentru a stoca sumele liniilor
// citim matricea și calculăm sumele liniilor
for (int i = 1; i <= n; ++i) {
suma[i] = 0; // inițializăm suma pentru linia i
for (int j = 1; j <= n; ++j) {
cin >> matrice[i][j]; // citim elementul
suma[i] += matrice[i][j]; // adunăm la suma liniei i
}
}
// sortăm liniile matricei în funcție de suma liniilor
for (int i = 1; i <= n - 1; ++i) {
for (int j = i + 1; j <= n; ++j) {
if (suma[i] > suma[j]) {
// interschimbăm liniile matricei
for (int k = 1; k <= n; ++k) {
int temp = matrice[i][k];
matrice[i][k] = matrice[j][k];
matrice[j][k] = temp;
}
// interschimbăm sumele
int tempSum = suma[i];
suma[i] = suma[j];
suma[j] = tempSum;
}
}
}
// afișăm matricea ordonată
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
cout << matrice[i][j] << " "; // afișăm elementul
}
cout << endl; // trecem la linia următoare
}
return 0;
}