Submission #860161

#TimeUsernameProblemLanguageResultExecution timeMemory
860161lovrotHotel (CEOI11_hot)C++17
100 / 100
724 ms66856 KiB
#include <cstdio> #include <vector> #include <algorithm> #include <set> #define X first #define Y second #define EB emplace_back #define MP make_pair using namespace std; typedef long long ll; typedef pair<int, int> pii; typedef pair<ll, ll> pll; int n, m, k; multiset<pll> A; vector<pll> B; vector<ll> ANS; int main() { scanf("%d%d%d", &n, &m, &k); for(int i = 0; i < n; ++i) { int a, b; scanf("%d%d", &a, &b); A.insert({b, a}); } for(int i = 0; i < m; ++i) { int a, b; scanf("%d%d", &a, &b); B.EB(MP(a, b)); } sort(B.begin(), B.end(), [](pll a, pll b) { return a.X > b.X || (a.X == b.X && a.Y < b.Y); }); for(pll p : B) { auto lb = A.lower_bound(MP(p.Y, 0)); if(lb != A.end()) { ANS.EB(p.X - (*lb).Y); A.erase(lb); } } sort(ANS.begin(), ANS.end(), [](ll a, ll b) { return a > b; }); ll ans = 0; for(int i = 0; i < min(k, (int) ANS.size()) && ANS[i] > 0; ++i) ans += ANS[i]; printf("%lld\n", ans); return 0; }

Compilation message (stderr)

hot.cpp: In function 'int main()':
hot.cpp:24:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   24 |  scanf("%d%d%d", &n, &m, &k);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~~~
hot.cpp:27:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |   scanf("%d%d", &a, &b);
      |   ~~~~~^~~~~~~~~~~~~~~~
hot.cpp:32:8: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   32 |   scanf("%d%d", &a, &b);
      |   ~~~~~^~~~~~~~~~~~~~~~
#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...