题解
2024-10-23 13:19:09
发布于:广东
10阅读
0回复
0点赞
EZ
#include <iostream>
#include <cstdio>
using namespace std;
int a[21], b[21];
int n, m;
int dp(int v, int w, int ct){
if(w > m) return 0;
if(ct > n) return v;
return max(dp(v + b[ct], w + a[ct], ct + 1), dp(v, w, ct + 1));
}
int main(){
cin >> n >> m;
for(int i = 1; i <= n; i++) cin >> a[i];
for(int i = 1; i <= n; i++) cin >> b[i];
cout << dp(0, 0, 1);
return 0;
}
这里空空如也
有帮助,赞一个