Merge pull request #61 from dhruvsaini/patch-3

Create knapsack.py
This commit is contained in:
Harshil 2017-01-03 16:51:39 +05:30 committed by GitHub
commit bdde8268c6

View File

@ -0,0 +1,14 @@
"""
Given weights and values of n items, put these items in a knapsack of capacity W to get the maximum total value in the knapsack.
"""
def knapsack(W, wt, val, n):
dp = [[0 for i in range(W+1)]for j in range(n+1)]
for i in range(1,n+1):
for w in range(1,W+1):
if(wt[i-1]<=w):
dp[i][w] = max(val[i-1]+dp[i-1][w-wt[i-1]],dp[i-1][w])
else:
dp[i][w] = dp[i-1][w]
return dp[n][w]