n, m, k = map(int, input().split())
dp = [0] * (k + 1)
for i in range(n):
wielkosci = list(map(int, input().split()))
akt = []
for j in range(m):
akt.append(wielkosci[j])
pref = [0] * (m + 1)
for j in range(m):
pref[j+1] = pref[j] + akt[j]
new_dp = [0] * (k + 1)
for j in range(k + 1):
for x in range(min(j, m) + 1):
new_dp[j] = max(dp[j - x] + pref[x], new_dp[j])
dp = new_dp
print(dp[k])
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | n, m, k = map(int, input().split()) dp = [0] * (k + 1) for i in range(n): wielkosci = list(map(int, input().split())) akt = [] for j in range(m): akt.append(wielkosci[j]) pref = [0] * (m + 1) for j in range(m): pref[j+1] = pref[j] + akt[j] new_dp = [0] * (k + 1) for j in range(k + 1): for x in range(min(j, m) + 1): new_dp[j] = max(dp[j - x] + pref[x], new_dp[j]) dp = new_dp print(dp[k]) |
English