// iostream is too mainstream
#include <cstdio>
// bitch please
#include <iostream>
#include <algorithm>
#include <cstdlib>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <stack>
#include <list>
#include <cmath>
#include <iomanip>
#define dibs reserve
#define OVER9000 1234567890
#define ALL_THE(CAKE,LIE) for(auto LIE =CAKE.begin(); LIE != CAKE.end(); LIE++)
#define tisic 47
#define soclose 1e-8
#define chocolate win
// so much chocolate
#define patkan 9
#define ff first
#define ss second
#define abs(x) ((x < 0)?-(x):x)
#define uint unsigned int
#define dbl long double
using namespace std;
// mylittledoge
struct info {
double d;
int c[2];
bool operator<(const info &I) const {
return d < I.d;}
};
int main() {
cin.sync_with_stdio(0);
cin.tie(0);
int N;
cin >> N;
vector<info> A(N*(N-1)/2);
int x =0;
for(int i =0; i < N; i++) for(int j =0; j < N; j++) {
double d;
cin >> d;
if(j > i) A[x++].d =d;}
x =0;
for(int i =0; i < N; i++) for(int j =0; j < N; j++) {
int c;
cin >> c;
if(j > i) A[x++].c[1] =c;}
x =0;
for(int i =0; i < N; i++) for(int j =0; j < N; j++) {
int c;
cin >> c;
if(j > i) A[x++].c[0] =c;}
sort(A.begin(),A.end());
N =A.size();
cout << N/2 << " ";
vector< vector<int> > C[2];
for(int i =0; i < 2; i++) C[i].resize(N+1,vector<int>(N+tisic,OVER9000));
C[0][0][0] =0;
for(int i =0; i < N; i++) for(int j =0; j <= N; j++) {
for(int k =0; k < 2; k++) {
if(j > 0) C[k][i+1][j-1] =min(C[k][i+1][j-1],C[k][i][j]+A[i].c[1]);
C[k][i+1][j+1] =min(C[k][i+1][j+1],C[k][i][j]+A[i].c[0]);}
C[1][i+1][j] =min(C[1][i+1][j],C[0][i][j]);}
cout << C[N%2][N][0] << "\n";
return 0;}
// look at my code
// my code is amazing
Ly8gaW9zdHJlYW0gaXMgdG9vIG1haW5zdHJlYW0KI2luY2x1ZGUgPGNzdGRpbz4KLy8gYml0Y2ggcGxlYXNlCiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGNzdGRsaWI+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxzZXQ+CiNpbmNsdWRlIDxtYXA+CiNpbmNsdWRlIDxxdWV1ZT4KI2luY2x1ZGUgPHN0YWNrPgojaW5jbHVkZSA8bGlzdD4KI2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8aW9tYW5pcD4KI2RlZmluZSBkaWJzIHJlc2VydmUKI2RlZmluZSBPVkVSOTAwMCAxMjM0NTY3ODkwCiNkZWZpbmUgQUxMX1RIRShDQUtFLExJRSkgZm9yKGF1dG8gTElFID1DQUtFLmJlZ2luKCk7IExJRSAhPSBDQUtFLmVuZCgpOyBMSUUrKykKI2RlZmluZSB0aXNpYyA0NwojZGVmaW5lIHNvY2xvc2UgMWUtOAojZGVmaW5lIGNob2NvbGF0ZSB3aW4KLy8gc28gbXVjaCBjaG9jb2xhdGUKI2RlZmluZSBwYXRrYW4gOQojZGVmaW5lIGZmIGZpcnN0CiNkZWZpbmUgc3Mgc2Vjb25kCiNkZWZpbmUgYWJzKHgpICgoeCA8IDApPy0oeCk6eCkKI2RlZmluZSB1aW50IHVuc2lnbmVkIGludAojZGVmaW5lIGRibCBsb25nIGRvdWJsZQp1c2luZyBuYW1lc3BhY2Ugc3RkOwovLyBteWxpdHRsZWRvZ2UKCnN0cnVjdCBpbmZvIHsKCWRvdWJsZSBkOwoJaW50IGNbMl07CgoJYm9vbCBvcGVyYXRvcjwoY29uc3QgaW5mbyAmSSkgY29uc3QgewoJCXJldHVybiBkIDwgSS5kO30KCX07CgppbnQgbWFpbigpIHsKCWNpbi5zeW5jX3dpdGhfc3RkaW8oMCk7CgljaW4udGllKDApOwoJaW50IE47CgljaW4gPj4gTjsKCXZlY3RvcjxpbmZvPiBBKE4qKE4tMSkvMik7CglpbnQgeCA9MDsKCWZvcihpbnQgaSA9MDsgaSA8IE47IGkrKykgZm9yKGludCBqID0wOyBqIDwgTjsgaisrKSB7CgkJZG91YmxlIGQ7CgkJY2luID4+IGQ7CgkJaWYoaiA+IGkpIEFbeCsrXS5kID1kO30KCXggPTA7Cglmb3IoaW50IGkgPTA7IGkgPCBOOyBpKyspIGZvcihpbnQgaiA9MDsgaiA8IE47IGorKykgewoJCWludCBjOwoJCWNpbiA+PiBjOwoJCWlmKGogPiBpKSBBW3grK10uY1sxXSA9Yzt9Cgl4ID0wOwoJZm9yKGludCBpID0wOyBpIDwgTjsgaSsrKSBmb3IoaW50IGogPTA7IGogPCBOOyBqKyspIHsKCQlpbnQgYzsKCQljaW4gPj4gYzsKCQlpZihqID4gaSkgQVt4KytdLmNbMF0gPWM7fQoJc29ydChBLmJlZ2luKCksQS5lbmQoKSk7CglOID1BLnNpemUoKTsKCgljb3V0IDw8IE4vMiA8PCAiICI7Cgl2ZWN0b3I8IHZlY3RvcjxpbnQ+ID4gQ1syXTsKCWZvcihpbnQgaSA9MDsgaSA8IDI7IGkrKykgQ1tpXS5yZXNpemUoTisxLHZlY3RvcjxpbnQ+KE4rdGlzaWMsT1ZFUjkwMDApKTsKCUNbMF1bMF1bMF0gPTA7Cglmb3IoaW50IGkgPTA7IGkgPCBOOyBpKyspIGZvcihpbnQgaiA9MDsgaiA8PSBOOyBqKyspIHsKCQlmb3IoaW50IGsgPTA7IGsgPCAyOyBrKyspIHsKCQkJaWYoaiA+IDApIENba11baSsxXVtqLTFdID1taW4oQ1trXVtpKzFdW2otMV0sQ1trXVtpXVtqXStBW2ldLmNbMV0pOwoJCQlDW2tdW2krMV1baisxXSA9bWluKENba11baSsxXVtqKzFdLENba11baV1bal0rQVtpXS5jWzBdKTt9CgkJQ1sxXVtpKzFdW2pdID1taW4oQ1sxXVtpKzFdW2pdLENbMF1baV1bal0pO30KCgljb3V0IDw8IENbTiUyXVtOXVswXSA8PCAiXG4iOwoJcmV0dXJuIDA7fQoKLy8gbG9vayBhdCBteSBjb2RlCi8vIG15IGNvZGUgaXMgYW1hemluZwo=