196812025-12-18 18:12:22GergoszaboOsztozkodás (75 pont)cpp17Accepted 75/7559ms1260 KiB
#include <iostream>
#include <bits/stdc++.h>
using ll = long long;
using namespace std;

int main()
{
    ll n, k; cin >> n >> k;
    vector<ll> v(n);
    for (ll i = 0; i < n; i++){
        cin >> v[i];
    }

    sort(v.begin(), v.end());
    reverse(v.begin(), v.end());
    ll a = 0, b = 0;
    for (ll i = 0; i < n-k; i++){
        if (i % 2 == 0) a += v[i];
        else b += v[i];
    }
    ll sum = 0;
    for (ll i = n-k; i < n; i++){
        sum += v[i];
    }
    for (ll i = n-k; i < n; i++){
        if (i % 2 == 0){
            a += max(v[i], sum);
        }
        else {
            b += max(v[i], sum);
        }
        if (sum > v[i]) break;
        sum -= v[i];
    }
    cout << a << " " << b;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base75/75
1Accepted0/01ms316 KiB
2Accepted0/01ms508 KiB
3Accepted2/21ms316 KiB
4Accepted3/31ms500 KiB
5Accepted3/31ms316 KiB
6Accepted2/22ms416 KiB
7Accepted3/32ms316 KiB
8Accepted2/23ms420 KiB
9Accepted3/32ms316 KiB
10Accepted2/23ms316 KiB
11Accepted3/32ms316 KiB
12Accepted1/157ms1188 KiB
13Accepted2/256ms1076 KiB
14Accepted1/156ms1188 KiB
15Accepted2/256ms1196 KiB
16Accepted1/132ms1076 KiB
17Accepted2/241ms1076 KiB
18Accepted1/132ms1076 KiB
19Accepted2/227ms1076 KiB
20Accepted2/227ms1076 KiB
21Accepted3/346ms1260 KiB
22Accepted2/239ms1076 KiB
23Accepted3/341ms1076 KiB
24Accepted2/246ms1076 KiB
25Accepted3/346ms1076 KiB
26Accepted2/246ms1076 KiB
27Accepted3/359ms1076 KiB
28Accepted2/259ms1076 KiB
29Accepted3/356ms1076 KiB
30Accepted3/31ms316 KiB
31Accepted3/31ms316 KiB
32Accepted3/31ms508 KiB
33Accepted3/31ms500 KiB
34Accepted3/31ms500 KiB