用户登录
动态规划的思想是自底向上,先求局部最优解然后求全局最优解。
dp[i][j]代表的是当前状态物品的数量以及背包的容量。
N, V = map(int,input().split())
dp = [[0 for _ in range(V+1)] for _ in range(N+1)]for i in range(1,N+1):v, w = map(int,input().split())for j in range(1,V+1):if j<v:dp[i][j] = dp[i-1][j]else:dp[i][j] = max(dp[i-1][j],dp[i-1][j-v]+w)# for elem in dp:
# print(elem)
print(dp[N][V])