[计蒜客(蓝桥杯省赛)]蒜头君的购物袋 原创
题目来源 计蒜客程序设计竞赛基础课(蓝桥杯省赛)
算法标签 DP
题目描述

思路
01背包模板
题目代码
#include<iostream>
using namespace std;
const int N=35;
int dp[N][20200];//DP dp[1][]数量 dp[][1]余额
int weight[N];//重量
int main()
{
int v,n;
cin>>v>>n;
for(int i=1;i<=n;i++)cin>>weight[i];
for(int i=1;i<=n;i++)//搜索
for(int j=1;j<=v;j++)
{
dp[i][j]=dp[i-1][j];
if(j>weight[i])dp[i][j]=max(dp[i-1][j],dp[i-1][j-weight[i]]+weight[i]);//状态转移方程
}
int minn=1E18;
for(int i=1;i<=v;i++)minn=min(minn,v-dp[n][i]);//搜索所有大小下最小的值
cout<<minn;
return 0;
}

浙公网安备 33010602011771号