제출 #875416

#제출 시각아이디문제언어결과실행 시간메모리
875416lalig777Hotel (CEOI11_hot)C++14
30 / 100
821 ms29396 KiB
#include <iostream> #include <vector> #include <algorithm> #include <queue> using namespace std; int main(){ int n, m, o; priority_queue<int>pq; cin>>n>>m>>o; vector<pair<int,int> >habitacions(n); vector<int>max_prof(n, 0); vector<pair<int,int> >offers(m); for (int i=0; i<n; i++) cin>>habitacions[i].first>>habitacions[i].second; sort(habitacions.begin(), habitacions.end()); for (int i=0; i<m; i++) cin>>offers[i].second>>offers[i].first; sort(offers.begin(), offers.end()); int k=0; for (int i=0; i<n; i++){ int max_people=habitacions[i].second; for (int j=k; j<m; j++){ if (offers[j].first<=max_people) pq.push(offers[j].second); else{ k=j; break; }if (j==m-1) k=m; }if (!pq.empty()){ max_prof[i]=pq.top()-habitacions[i].first; pq.pop(); } }sort(max_prof.begin(), max_prof.end()); long long int ans=0; for (int i=n-1; i>=n-o; i--) ans+=max_prof[i]; cout<<ans<<endl; 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...
#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...