题目链接
感觉还是01背包……如果金额小于5元直接输出,否则先拿出5元买最贵的菜。f[j]表示还剩余j元时所能产生的最大花费
//01背包问题
//当金额小于5直接输出
//金额大于等于5就先拿出5元买最贵的菜,然后变成一个01背包
//f[j]表示还剩j元所能产生的最大花费
#include<cstdio>
#include<cstring>
#include<algorithm>
#define INF 0x3f3f3f3f
using namespace std;
const int N=1e3+10;
int f[N],