Cod sursa(job #2533206)

Utilizator jack92657Jacky boy jack92657 Data 28 ianuarie 2020 20:36:15
Problema Problema rucsacului Scor 25
Compilator py Status done
Runda Arhiva educationala Marime 0.46 kb
file = open("rucsac.in", "r")
N, G = map(int, file.readline().split())
v = []
for _ in range(N):
	c, p = map(int, file.readline().split())
	v.append([c, p])

pd = [[0 for _ in range(G+1)] for __ in range(N+1)]

for n in range(N):
	for g in range(1, G+1):
		pd[n][g] = pd[n][g-1]
		if n > 0:
			pd[n][g] = pd[n-1][g]
		if g >= v[n][0]:
			pd[n][g] = max(pd[n][g], v[n][1]+pd[n-1][g-v[n][0]])

file.close()
file = open("rucsac.out", "w")
file.write(str(pd[N-1][G]))
file.close()