hdu2546饭卡-01背包

        当卡上的金额大于等于5时,可以用5元去买任意价格的菜,所以当然是用这5元去买最贵的菜了,剩下的问题就是,求剩下的m-5元能买到的最高的价值总量。

#include 
#include 
#include 
#include 
using namespace std;

int main()
{
    int n,m,i,j;
    int food[1002],dp[1002];
    while(cin>>n&&n)
    {
        for(int i=0;i>m;
        if(m<5)
        {
            cout<=food[i];v--)
            {
                dp[v]=max(dp[v],dp[v-food[i]]+food[i]);
            }
            cout<







你可能感兴趣的:(三,ACM_背包九讲(dp))