Submission #1241643

#TimeUsernameProblemLanguageResultExecution timeMemory
1241643ak5028Knapsack (NOI18_knapsack)C++20
0 / 100
1 ms328 KiB
#include<bits/stdc++.h> using namespace std; typedef long long int ll; int main(){ ll s,n;cin>>s>>n; vector<ll>a,val,times; for(ll i=1;i<=n;i++){ ll v,w,k; cin>>v>>w>>k; val.push_back(v); a.push_back(w); times.push_back(k); } vector<ll>dp(s+1); dp[0]=0; for(ll i=0;i<n;i++){ for(ll f=1;f<=times[i];f++){ ll r=a[i]*f; ll h=val[i]*f; if(r>s){break;} dp[r]=max(dp[r],h); } for(ll j=s;j>=a[i];j--){ dp[j]=max(dp[j],dp[j-a[i]]+val[i]); } } cout<<dp[s]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...