Submission #1154691

#TimeUsernameProblemLanguageResultExecution timeMemory
1154691vicvicKnapsack (NOI18_knapsack)C++20
73 / 100
1096 ms328 KiB
#include <iostream> #include <fstream> #include <vector> #include <algorithm> #include <cstdint> #define int long long using namespace std; const int NMAX=1e5, WMAX=2e3, KMAX=1e9; int n, gmax, dp[2005]; int32_t main () { ios :: sync_with_stdio (0); cin.tie (nullptr); cin >> gmax >> n; int t=0; for (int i=1;i<=n;i++) { int v, w, k; cin >> v >> w >> k; int pw=1, cnt=1; while (pw<=k) { for (int i=gmax;i>=w*pw;i--) { dp[i]=max (dp[i], dp[i-w*pw]+v*pw); } k -= pw; pw*=2; cnt++; } for (int i = gmax; i >= w * k; i--) { dp[i] = max(dp[i], dp[i - w * k] + v * k); } } cout << dp[gmax]; return 0; }
#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...