#include <iostream>
#include <bits/stdc++.h>

using namespace std;

int najm_t;
bool proveri=false;
int t[1000][1000];

void f(int x, int y, int n, int zbir)
{
    zbir+=t[x][y];
    if (x<n)
        f(x+1,y,n,zbir);
    if (y<n)
        f(x,y+1,n,zbir);
    if (x==n && y==n)
        if (proveri && najm_t>zbir)
            najm_t=zbir;
        else if (!proveri)
        {
            najm_t=zbir;
            proveri=true;
        }
    return;
}

int main()
{
    int n;
    cin>>n;
    for (int i=0;i<n;i++)
    {
        string x;
        cin>>x;
    }
    for (int i=0;i<n;i++)
        for (int j=0;j<n;j++)
        {
           cin>>t[i][j];
        }
    f(0,0,n-1,0);
    cout<<najm_t;
}