m,n,k,a[21][21],maxn,x,y,ans,nx=-1,ny;
#define For(i,n)for(int i=0;i<n;++i)
abs(x){return x<0?-x:x;}
min(x,y){return x<y?x:y;}
print(){
printf("%d",ans);
exit(0);
}
gmax(){
maxn=0;
For(i,m)
For(j,n)
if(a[j][i]>maxn)
maxn=a[j][i],x=j,y=i;
}
gbest(){
int t;
nx==-1?t=1+y:(t=min(abs(nx-x)+abs(ny-y),ny+2+y));
if(k>=t+1+y+1)
k-=t+1,nx=x,ny=y,ans+=a[x][y],a[x][y]=0;
else
print();
}
main(){
scanf("%d%d%d",&m,&n,&k);
int sum;
For(i,m)
For(j,n)
scanf("%d",&a[j][i]),sum+=a[j][i];
while(ans<sum){
gmax();gbest();
}
print();
}