【Luogu1616】疯狂的采药

            

题面

完全背包

题解

#include
using namespace std;
const int maxn = 100010;
int n, m, c[maxn], w[maxn], f[maxn];
int main(){
    cin>>m>>n;
    for(int i = 1; i <= n; i++)
        cin>>c[i]>>w[i];
    for(int i = 1; i <= n; i++)
        for(int j = c[i]; j <= m; j++)
            f[j] = max(f[j],f[j-c[i]]+w[i]);
    cout<"\n";
    return 0;
}
点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像