Untitled

 avatar
unknown
plain_text
a month ago
514 B
2
Indexable
n = int(input())
a = [[0] * (n + 1) for i in range(n + 1)]

#просто ввод
for i in range(1, n + 1):
    row = list(map(int, input().split()))
    for j in range(1, n + 1):
        a[i][j] = row[j - 1]

dp = [[0] * (n + 1) for i in range(n + 1)]

for j in range(1, n + 1):
    for s in range(1, n + 1):
        mv = dp[j - 1][s]
        for i in range(1, n + 1):
            if s - i >= 0:
                mv = max(mv, dp[j - 1][s - i] + a[i][j])
        dp[j][s] = mv

print(dp[n][n])
Leave a Comment