#include using namespace std;const int N = 1009;int n, m, p;int gold[N][N];int cost[N];int f[N];int main() {cin >> n >> m >> p;for (int i = 1; i <= n; i ++) {for (int j = 1; j <= m; j ++) {cin >> gold[i][j];}}for (int i = 1; i <= n; i ++) cin >> cost[i];for (int j = 1; j <= m; j ++) {for (int i = 1; i <= n; i ++) {int tmp = f[j - 1] - cost[i]; for (int k = 1; k <= min(m - j + 1, p); k ++) {int road = (i - 1) + k;if (road > n) road -= n;int time = (j - 1) + k;tmp += gold[road][time];f[time] = max(f[time], tmp);}}}cout << f[m];return 0;}