Submission #1034163

# Submission time Handle Problem Language Result Execution time Memory
1034163 2024-07-25T10:15:15 Z vjudge1 Schools (IZhO13_school) C++17
20 / 100
60 ms 12712 KB
#include<bits/stdc++.h>
#define ll long long
#define pll pair<ll, ll>
#define fi first
#define se second
using namespace std;

int n, m, s;
const int maxn = 2e6 + 3;
const int inf = 1e9;
pll p[maxn + 3];
priority_queue<int, vector<int>, greater<int>>pq1, pq2;
ll l[maxn + 3], r[maxn + 3], ans;

bool cmp(pll a, pll b)
{
    return a.fi - a.se < b.fi - b.se;
}

int main()
{
 //   freopen("SCHOOL.INP", "r", stdin);
 //   freopen("SCHOOL.OUT", "w", stdout);
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    cin >> n >> m >> s;
    for(int i = 1; i <= n; i++)
    {
        cin >> p[i].fi >> p[i].se;
    }
    sort(p + 1, p + n + 1, cmp);
    /*for(int i = 1; i <= n; i++)
    {
        cout << p[i].first << ' ' << p[i].second << '\n';
    } cout << '\n';*/
    for(int i = 1; i <= s; i++)
    {
        pq1.push(p[i].se);
        ans += p[i].se;
        l[i] = ans;
    }
    for(int i = s + 1; i <= n; i++)
    {
        if(!pq1.empty() && p[i].se > pq1.top())
        {
            ans = ans + p[i].se - pq1.top();
        }
        l[i] = ans;
    }
    ll ans = 0;
    for(int i = n; i >= n - m + 1; i--)
    {
        pq2.push(p[i].fi);
        ans += p[i].fi;
        r[i] = ans;
    }
    //cout << ans;
    for(int i = n - m; i >= 1; i--)
    {
        if(!pq2.empty() && p[i].fi > pq2.top())
        {
            ans  = ans + p[i].fi - pq2.top();
        }
        r[i] = ans;
    }
     ans = -inf;
    for(int i = 1; i < n; i++)
    {
        ans = max(ans, l[i] + r[i + 1]);
    }
    cout << ans;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Incorrect 0 ms 348 KB Output isn't correct
3 Correct 0 ms 468 KB Output is correct
4 Incorrect 0 ms 344 KB Output isn't correct
5 Incorrect 0 ms 348 KB Output isn't correct
6 Incorrect 0 ms 344 KB Output isn't correct
7 Incorrect 2 ms 548 KB Output isn't correct
8 Correct 2 ms 604 KB Output is correct
9 Incorrect 1 ms 604 KB Output isn't correct
10 Incorrect 1 ms 604 KB Output isn't correct
11 Incorrect 2 ms 604 KB Output isn't correct
12 Incorrect 1 ms 548 KB Output isn't correct
13 Incorrect 8 ms 2140 KB Output isn't correct
14 Incorrect 16 ms 3736 KB Output isn't correct
15 Incorrect 33 ms 6484 KB Output isn't correct
16 Correct 40 ms 8024 KB Output is correct
17 Incorrect 49 ms 9524 KB Output isn't correct
18 Incorrect 47 ms 10584 KB Output isn't correct
19 Incorrect 57 ms 11172 KB Output isn't correct
20 Incorrect 60 ms 12712 KB Output isn't correct