#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll S,N; cin>>S>>N;
vector<ll>dp(S+1,0);
for(int i=0; i<N ; i++)
{
ll v,w,k; cin>>v>>w>>k;
for(ll cnt=1;k>0;cnt<<=1)
{
ll take=min(cnt,k);
k-=take;
ll tlt_v=v*take;
ll tlt_w=w*take;
for(ll j=S;j>=tlt_w;j--)
{
dp[j]=max(dp[j],dp[j-tlt_w]+tlt_v);
}
}
}
cout<<*max_element(dp.begin(),dp.end())<<endl;
}
# | 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... |