#include <bits/stdc++.h>
using namespace std;
#define int long long
struct A{
int vi,wi,ki;
}a[100010];
int dp[2010];
int32_t main(){
cin.tie(nullptr)->sync_with_stdio(false);
int s,n;
cin >> s >> n;
for(int i=1;i<=n;i++){
cin >> a[i].vi >> a[i].wi >> a[i].ki;
a[i].ki=min(a[i].ki,s/a[i].wi);
}
for(int i=1;i<=n;i++){
for(int j=1;j<=a[i].ki;j++){
for(int k=s;k>=0;k--){
if(k-a[i].wi>=0)dp[k]=max(dp[k],dp[k-a[i].wi]+a[i].vi);
}
}
}
cout << dp[s] << '\n';
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |