I was writing knapsack
w = [0 for x in xrange(item_count+1)]
v = [0 for x in xrange(item_count+1)]
assigned value and weight (v, w) respectively. created
c = [[0 for x in xrange(capacity+1)] for x in xrange(item_count+1)]
c, w and v is assigned values after this respectively(not zero)
for i in range(1,item_count+1):
#for ever possible weight
for j in range(0,capacity+1):
#can we add this item to this?
if w[i] <= j :
c[i][j] = max(c[i-1][j], v[i] + c[i-1][j-w[i]])
else:
c[i][j] = c[i-1][j]
This if w[i] <= j:
is always False
even if on printing w[i]
seems greater than j
. Dont know why?