Submission #1212520

#TimeUsernameProblemLanguageResultExecution timeMemory
1212520cubedKnapsack (NOI18_knapsack)C++20
0 / 100
28 ms48452 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define yes cout<<"YES\n" #define no cout<<"NO\n" #define endl '\n' const int MOD = 1e9+7; const int inf =1e9; bool multi=false; int main() { #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif ll t=1; if (multi) cin>>t; while (t--) { int s, n; cin>>s>>n; vector<pair<ll, ll>> items; for (int i=0; i<n; i++) { ll v,w,k; cin>>v>>w>>k; for (ll p=1; k>0; p<<=1) { ll cnt = min(p, k); items.push_back({v*cnt, w*cnt}); k-=cnt; } } vector<ll> dp(s+1, 0); for (auto item:items) { ll val=item.first, weight=item.second; for (int i=s; i>=weight; i--) { dp[i]=max(dp[i], dp[i-weight]+val); } } cout<<dp[s]; } return 0; }

Compilation message (stderr)

knapsack.cpp: In function 'int main()':
knapsack.cpp:17:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   17 |         freopen("input.txt", "r", stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
knapsack.cpp:18:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   18 |         freopen("output.txt", "w", stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...