- #include <bits/stdc++.h>
- using namespace std;
- int main()
- {
- int n, x;
- cin >> n >> x;
- vector <pair<int, int>> data(n);
- vector <int> dp(x+1);
- for(int i=0; i<n; i++)
- cin >> data[i].first;
- for(int i=0; i<n; i++)
- cin >> data[i].second;
- for(auto i : data)
- {
- for(int j=0; i.first+j<=x; j++)
- dp[i.first+j] = dp[j]+i.second;
- }
- cout << dp[x];
- return 0;
- }
複製代碼 |