#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
struct Node
{
int x;
int y;
int num;
Node(){}
Node(int i,int j)
{
x = j;
y = i;
cin >> num;
}
Node(int i,int j,int k):x(j),y(i),num(k){}
}a[1000060];
int mad(struct Node a,struct Node b)
{
return abs(a.x - b.x) + abs(a.y - b.y);
}
bool cmp(struct Node a,struct Node b)
{
return a.num > b.num;
}
int main()
{
int n,m,k,cnt = 0;
cin >> n >> m >> k;
for (int i = 1;i <= n;i++)
{
for (int j = 1;j <= m;j++)
{
a[++cnt] = Node(i,j);
}
}
sort(a + 1,a + cnt + 1,cmp);
long long ans = 0;
Node now(a[1].x,0,0);
for (int i = 1;i <= cnt;i++)
{
if (k >= mad(now,a[i]) + a[i].y + 1)
{
k -= mad(now,a[i]);k--;
ans += a[i].num;
now = a[i];
}
else break;
}
cout << ans << endl;
return 0;
}