#include <cstdio>
#include <iostream>
#include <algorithm>
#include <sstream>
#include <vector>
#define N_MAX 205
#define INF (0x3f3f3f3f)
using namespace std;
long long Data[1001][1001];
vector<long long>Size;
vector<long long>Val;
int main()
{
int N, M;
cin >> N >> M; //存储容量、电影数量
long long save;
Size.push_back(0);
Val.push_back(0);
for (int i = 0; i < M; ++i)
{
cin >> save;
Size.push_back(save);
}
for (int i = 0; i < M; ++i)
{
cin >> save;
Val.push_back(save);
}
Data[0][0] = 0;
for (int i = 1; i <= M; ++i)
{
for (int j = 1; j <= N; ++j)
{
if (j > Size[i])
Data[i][j] = max(Data[i - 1][j], Data[i - 1][j - Size[i]] + Val[i]);
else
Data[i][j] = Data[i - 1][j];
}
}
cout << Data[M][N];
return 0;
}
(腾讯笔试)01背包
猜你喜欢
转载自blog.csdn.net/Yanpr919/article/details/100672360
今日推荐
周排行