125312024-12-21 15:38:24PappMatyasOsztozkodás (75 pont)cpp17Hibás válasz 6/7557ms808 KiB
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;


// 10 5
int main()
{
    int n, k, a = 0, b = 0, as, bs, am, bm;
    int ab = 0;
    vector<int> S;
    cin >> n >> k;
    S.resize(n);
    for(int i = 0; i < n; i++)
    {
        cin >> S[i];
    }
    sort(S.begin(), S.end());
    for(int i = n - 1; i >= k; i--)
    {
        if(i % 2 != n % 2)
        {
            a+=S[i];
        }
        else
        {
            b+=S[i];
        }
    }
    as = a;
    bs = b;
    for(int i = k - 1; i >= 0; i--)
    {
        if(i % 2 != n % 2)
        {
            as+=S[i];
        }
        else
        {
            bs+=S[i];
        }
    }
    int sum = as + bs - a - b;
    for(int i = k - 1; i >= 0; i--)
    {
        if(i % 2 != n % 2)
        {
            if(sum + a > as && (ab == 1 || ab == 0))
            {
                am = sum + a;
                bm = b;
                ab = 1;
            }
            a+=S[i];
        }
        else
        {
            if(sum + b > bs && (ab == 2 || ab == 0))
            {
                bm = sum + b;
                am = a;
                ab = 2;
            }
            b+=S[i];
        }
        sum-=S[i];
    }
    cout << am << " " << bm;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/75
1Hibás válasz0/01ms320 KiB
2Hibás válasz0/01ms508 KiB
3Hibás válasz0/21ms320 KiB
4Elfogadva3/31ms320 KiB
5Hibás válasz0/31ms320 KiB
6Hibás válasz0/22ms320 KiB
7Hibás válasz0/32ms320 KiB
8Hibás válasz0/22ms412 KiB
9Hibás válasz0/32ms412 KiB
10Hibás válasz0/22ms320 KiB
11Hibás válasz0/32ms320 KiB
12Hibás válasz0/154ms804 KiB
13Hibás válasz0/254ms800 KiB
14Hibás válasz0/154ms568 KiB
15Hibás válasz0/254ms800 KiB
16Hibás válasz0/130ms808 KiB
17Hibás válasz0/239ms804 KiB
18Hibás válasz0/130ms568 KiB
19Hibás válasz0/225ms568 KiB
20Hibás válasz0/226ms568 KiB
21Hibás válasz0/345ms568 KiB
22Hibás válasz0/237ms568 KiB
23Hibás válasz0/341ms800 KiB
24Hibás válasz0/245ms568 KiB
25Hibás válasz0/345ms568 KiB
26Hibás válasz0/245ms568 KiB
27Hibás válasz0/357ms808 KiB
28Hibás válasz0/257ms748 KiB
29Hibás válasz0/354ms592 KiB
30Hibás válasz0/31ms320 KiB
31Hibás válasz0/31ms320 KiB
32Elfogadva3/31ms320 KiB
33Hibás válasz0/31ms320 KiB
34Hibás válasz0/31ms320 KiB