sac à dos acwing_01

 

 

 

#include <iostream>
#include <algorithm>
using namespace std;
const int MAX = 1010;
int f [MAX] [MAX]; // 表示 装 了 前 i 个 背包 后 的 最大 价值 是 多少
int v [MAX], w [MAX];
int main ()
{
int n, m;
cin >> n >> m;
pour (int i = 1; i <= n; ++ i)
cin >> w [i] >> v [i];
pour (int i = 1; i <= n; ++ i)
{
for (int j = 1; j <= m; ++ j)
{if (j <w [i])
f [i] [j] = f [i-1] [j];
sinon
f [i] [j] = max (f [i-1] [j], f [i-1] [jw [i]] + v [i]);
}

}
cout << f [n] [m];
retourner 0;
}

 

Notez l'exemple de lecture, le format de sortie et les compétences de déclaration de variables;

Je suppose que tu aimes

Origine www.cnblogs.com/WAsbry/p/12688785.html
conseillé
Classement