#include<iostream>using namespace std;int ans,n;void dfs(int row,int b[][10]){int i,j;if(row==n) return;int s,max=-1000000,c[10][10];for(i=0;i<n;i++){s=0;for(j=0;j<n;j++)s+=b[j][i];if(s>max) max=s;}if(max<ans) ans=max;for(i=0;i<n;i++)for(j=0;j<n;j++)c[i][j]=b[i][j];for(i=0;i<n;i++){for(j=0;j<n;j++){if(j-i<0)c[row][j]=b[row][j-i+n];elsec[row][j]=b[row][j-i];}dfs(row+1,c);}}int main(){int i,j;int a[10][10];while(cin>>n&&n>0){ans=10000*100;for(i=0;i<n;i++)for(j=0;j<n;j++) cin>>a[i][j];dfs(0,a);cout<<ans<<endl;}return 0;}


