请问这份多重背包的写法有什么问题吗? 评测过不了。
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn = 1e5 + 5;
int n, V;
int dp[maxn], a[maxn], c[maxn], x[maxn];
void Solve(){
cin>>n>>V;
for(int i = 1; i <= n; ++i) cin>>a[i]>>c[i]>>x[i];
for(int i = 1; i <= n; ++i){
for(int k = x[i]; k >= 1; --k){
for(int j = V; j >= k * a[i]; --j){
dp[j] = max(dp[j], dp[j - k * a[i]] + k * c[i]);
}
}
}
cout<<dp[V]<<endl;
}
signed main(){
Solve();
return 0;
}