Pagini recente » Cod sursa (job #763810) | Cod sursa (job #3328146) | Cod sursa (job #3352673) | Cod sursa (job #3348004) | Cod sursa (job #3355683)
def rucsac():
with open("rucsac.in", "r") as f:
N, G = map(int, f.readline().split())
objects = []
dp = [0] * (G + 1) # profitul maxim obtinut din porduse cu greutatea j
for _ in range(N):
w, p = map(int, f.readline().split())
objects.append((w, p))
for w, p in objects:
for j in range(G, w - 1, -1):
dp[j] = max(dp[j], dp[j-w] + p)
pmax = dp[G]
with open("rucsac.out", "w") as f:
f.write(str(pmax) + "\n")
rucsac()