Advertisement
Guest User

Untitled

a guest
Oct 15th, 2016
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.59 KB | None | 0 0
  1. def M(S,V,c):
  2.         C = [[0]*(c+1) for i in xrange(len(S)+1)]
  3.         for i in range(0,len(S),1):
  4.                 for j in range(0,c+1,1):
  5.                         if (i==0):
  6.                                 C[0][j]=max(V[0],0)
  7.                         else:
  8.                                 if ((j-S[i]) >= 0):
  9.                                         C[i][j]=max(C[i-1][j],C[i-1][j-S[i]]+V[i])
  10.                                 else:
  11.                                         C[i][j]=max(C[i-1][j],V[i])
  12.         return C[len(S)-1][c]
  13.  
  14. S = [1,2,3,4,5]
  15. V = [22,5,40,3,2]
  16. c = 4
  17. print M(S,V,c)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement