Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
115404 | 杨博煊 | 完全背包问题 | C++ | 通过 | 100 | 0 MS | 252 KB | 428 | 2023-12-11 13:31:17 |
#include<bits/stdc++.h> using namespace std; const int maxm = 2001,maxn = 31; int n,m,v,i; int c[maxn],w[maxm]; int f[maxm]; int main(){ cin>>m>>n; for(i = 1;i <= n;i++){ cin>>w[i]>>c[i]; } for(i = 1;i <= n;i++){ for(v = w[i];v <= m;v++){ if(f[v - w[i]] + c[i] > f[v]){ f[v] = f[v - w[i]] + c[i]; } } } printf("max=%d\n",f[m]); return 0; //共产主义万岁 //creative by yidao }