#include <bits/stdc++.h>
using namespace std;
int s, n, m, v[104][104], f[(int)2e4 + 4] = { 0 };
int main() {
cin >> s >> n >> m;
for (int i = 1; i <= s; i++)
for (int j = 1; j <= n; j++)
cin >> v[j][i];
for (int i = 1; i <= n; i++)
sort(v[i] + 1, v[i] + s + 1);
for (int i = 1; i <= n; i++)
for (int j = m; j >= 0; j--)
for (int k = 1; k <= s; k++)
if (j >= (v[i][k] << 1) | 1)
f[j] = max(f[j], f[j - ((v[i][k] << 1) | 1)] + k * i);
cout << f[m] << "\n";
return 0;
}
和题解对了一下也是差不多的,逻辑应该没问题,找了半天也不知道错在哪里