Submission #1153657

#TimeUsernameProblemLanguageResultExecution timeMemory
1153657BlockOGHoliday (IOI14_holiday)C++20
47 / 100
5091 ms1604 KiB
#include "holiday.h" #include <iostream> #include <queue> // meow mrrow nya nya :3c // play vivid/stasis. free on steam using namespace std; long long findMaxAttraction(int n, int start, int d, int attraction[]) { long long res = 0; long long sum2 = 0; priority_queue<int, vector<int>, greater<int>> q2; for (int j = 0; j <= start && d > 0; j++, d--) { sum2 += attraction[start - j]; q2.push(attraction[start - j]); while (q2.size() > d) { sum2 -= q2.top(); q2.pop(); } res = max(res, sum2); priority_queue<int, vector<int>, greater<int>> q(q2); long long sum = sum2; for (int i = start + 1, cd = d - 1 - (j >= 1); i < n && cd > 0; i++, cd--) { sum += attraction[i]; q.push(attraction[i]); while (q.size() > cd) { sum -= q.top(); q.pop(); } res = max(res, sum); if (i - start < j) cd--; } } return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...