P1048 采药(洛谷,动态规划递推,01背包原题) 对01背包的分析与理解(图文)

题目直接放链接

P1048 采药

这题只是01背包+背景故事而已

原题来的

PS:我写了一篇很详细的01背包说明,如果下面ac代码有看不懂的地方可以去看看

对01背包的分析与理解(图文)

下面上ac代码:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll f[1100];
ll timee[110];
ll w[110];
int main()
{
    ll t,m;
    cin>>t>>m;//t总时间,m总草药
    //time时间,w价值
    for(ll i=1;i<=m;i++)
    {
        scanf("%lld",&timee[i]);
        scanf("%lld",&w[i]);
    }
    for(ll i=1;i<=m;i++)
        for(ll j=t;j>=timee[i];j--)
        {
            f[j]=max(f[j],f[j-timee[i]]+w[i]);
        }
    cout<<f[t]<<endl;
}

猜你喜欢

转载自www.cnblogs.com/zyacmer/p/9973853.html