Pagini recente » Cod sursa (job #269679) | Borderou de evaluare (job #1154245) | Cod sursa (job #1966643) | Borderou de evaluare (job #1088434) | Cod sursa (job #3354822)
with open("rucsac.in", "r", encoding="utf-8") as f:
n, g = map(int, f.readline().split())
objects = [tuple(map(int, f.readline().split())) for _ in range(n)]
dp = [0] * (g + 1)
for w, p in objects:
for j in range(g, w - 1, -1):
dp[j] = max(dp[j], dp[j - w] + p)
with open("rucsac.out", "w", encoding="utf-8") as out:
out.write(str(dp[g]))