제출 #729266

#제출 시각아이디문제언어결과실행 시간메모리
729266PVSekharKnapsack (NOI18_knapsack)C++14
12 / 100
1 ms468 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long const ll MOD = 1000000007; int main() { ll n,s; cin>>s>>n; vector<ll> dp(s+1,0); map<ll,vector<pair<ll,ll>>> store; ll v,w,k; for (ll i = 0; i < n; i++) { cin>>v>>w>>k; store[w].push_back({v,k}); } for (auto st:store) { sort(st.second.begin(),st.second.end()); reverse(st.second.begin(),st.second.end()); } vector<pair<int,int>> final_store; ll ind=0,x=0; for (ll i = 1; i <= s; i++) { ind=0; if(store[i].size()==0)continue; for (ll j = 1; j <= (s/i); j++) { if(ind >= store[i].size()) break; if(! store[i][ind].second) ind++; if(ind >= store[i].size()) break; store[i][ind].second--; final_store.push_back({i,store[i][ind].first}); } } for(auto i : final_store){ for(int j = s; j >= i.first; j--) dp[j] = max(dp[j],dp[j-i.first]+i.second); } cout<<dp[s]<<endl; return 0; }

컴파일 시 표준 에러 (stderr) 메시지

knapsack.cpp: In function 'int main()':
knapsack.cpp:32:20: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   32 |             if(ind >= store[i].size()) break;
      |                ~~~~^~~~~~~~~~~~~~~~~~
knapsack.cpp:34:20: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   34 |             if(ind >= store[i].size()) break;
      |                ~~~~^~~~~~~~~~~~~~~~~~
knapsack.cpp:25:14: warning: unused variable 'x' [-Wunused-variable]
   25 |     ll ind=0,x=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...