Submission #926760

#TimeUsernameProblemLanguageResultExecution timeMemory
926760doducanhCloud Computing (CEOI18_clo)C++14
18 / 100
528 ms6980 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int maxx=-1e9-7; struct compu { int c,f,w; }; bool cmp(compu a, compu b) { return (a.f>b.f||(a.f==b.f&&a.w<a.w)); } vector<compu>v; int dp[5000005]; int dq[5000005]; int n,q; main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin>>n; int s=0; for(int i=1;i<=n;i++){ int c,f,w; cin>>c>>f>>w; s+=c; v.push_back({c,f,-w}); } cin>>q; for(int i=1;i<=q;i++){ int c,f,w; cin>>c>>f>>w; v.push_back({-c,f,w}); } sort(v.begin(),v.end(),cmp); for(int i=0;i<=s;i++)dp[i]=maxx; for(int i=0;i<=s;i++)dq[i]=maxx; dp[0]=0; dq[0]=0; for(int i=0;i<v.size();i++){ for(int j=0;j<=s;j++) { int pre=j-v[i].c; if(0<=pre&&pre<=s&&dp[pre]!=maxx)dq[j]=max(dq[j],dp[pre]+v[i].w); } for(int j=0;j<=s;j++)dp[j]=dq[j]; } int res=0; for(int i=0;i<=s;i++)res=max({res,dp[i],dq[i]}); cout<<res; return 0; }

Compilation message (stderr)

clo.cpp: In function 'bool cmp(compu, compu)':
clo.cpp:12:36: warning: self-comparison always evaluates to false [-Wtautological-compare]
   12 |     return (a.f>b.f||(a.f==b.f&&a.w<a.w));
      |                                 ~~~^~~~
clo.cpp: At global scope:
clo.cpp:18:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   18 | main()
      | ^~~~
clo.cpp: In function 'int main()':
clo.cpp:40:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<compu>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   40 |     for(int i=0;i<v.size();i++){
      |                 ~^~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...