请你给出c++风格的代码
时间: 2024-02-17 07:05:29 浏览: 19
好的,以下是C++版本的代码实现:
```c++
#include <iostream>
#include <vector>
using namespace std;
int knapsack(int C, vector<int>& w, vector<int>& v) {
int n = w.size();
vector<vector<int>> dp(n+1, vector<int>(C+1, 0));
for(int i=1; i<=n; i++) {
for(int j=1; j<=C; j++) {
if(j >= w[i-1]) {
dp[i][j] = max(dp[i-1][j], dp[i-1][j-w[i-1]]+v[i-1]);
}
else {
dp[i][j] = dp[i-1][j];
}
}
}
return dp[n][C];
}
int main() {
int C = 50;
vector<int> w = {10, 20, 30};
vector<int> v = {60, 100, 120};
cout << knapsack(C, w, v) << endl;
return 0;
}
```
其中,C为船的载重量,w和v分别为物品的重量和价值,均采用vector类型。