Submission #385248

#TimeUsernameProblemLanguageResultExecution timeMemory
385248ritul_kr_singhHotel (CEOI11_hot)C++17
100 / 100
1322 ms60252 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define sp << ' ' << #define nl << '\n' signed main(){ cin.tie(0)->sync_with_stdio(0); int n, m, o; cin >> n >> m >> o; array<int, 2> offers[m], room; multiset<array<int, 2>> rooms; for(int i=0; i<n; ++i){ cin >> room[1] >> room[0]; rooms.insert(room); } for(auto &i : offers) cin >> i[0] >> i[1]; sort(offers, offers+m, greater<>()); vector<int> pos; for(auto &i : offers){ auto f = rooms.lower_bound({i[1], 0}); if(f != rooms.end()){ pos.push_back(i[0] - (*f)[1]); rooms.erase(f); } } sort(pos.begin(), pos.end(), greater<>()); int ans = 0; for(int i=0; i<min(o, (int)pos.size()); ++i){ if(pos[i]>0) ans += pos[i]; } cout << ans; }
#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...