107992024-04-14 11:45:23AblablablaÖsszegzésekcpp17Elfogadva 100/10010ms4756 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin >> n;

    vector<int> alap(n);
    int osszeg = 0;
    for(int i = 0; i < n; i++){
        cin >> alap[i];
        osszeg += alap[i];
    }

    int novelInd = 0;
    int elotte = osszeg;
    for(int i = n - 1; i >= 1; i--){
        if(alap[i] != alap[i - 1] && elotte + 1 <= osszeg){
            novelInd = i;
            break;
        }
        elotte -= alap[i];
    }

    if(n == 1){
        cout << "0\n";
    } else{
        int mas = osszeg;
        for(int i = 0; i < novelInd; i++){
            cout << alap[i] << " ";
            mas -= alap[i];
        }
        cout << alap[novelInd] + 1 << " ";
        mas -= alap[novelInd] + 1;
        while(mas > 0){
            cout << "1 ";
            mas--;
        }
        cout << "\n";
    }

    int csokkInd = -1;
    for(int i = n - 1; i >= 0; i--){
        if(alap[i] != 1){
            csokkInd = i;
            break;
        }
    }

    if(n == osszeg){
        cout << "0\n";
    } else{
        int mas = osszeg;
        for(int i = 0; i < csokkInd; i++){
            cout << alap[i] << " ";
            mas -= alap[i];
        }
        int akt = alap[csokkInd] - 1;
        cout << akt << " ";
        mas -= akt;
        while(mas >= akt){
            cout << akt << " ";
            mas -= akt;
        }

        if(mas != 0){
            cout << mas << " ";
        }
        cout << "\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1712 KiB
2Elfogadva3ms2076 KiB
3Elfogadva3ms2216 KiB
subtask26/6
4Elfogadva3ms2088 KiB
5Elfogadva3ms2300 KiB
6Elfogadva3ms2552 KiB
7Elfogadva3ms2756 KiB
8Elfogadva3ms2960 KiB
subtask36/6
9Elfogadva3ms3016 KiB
10Elfogadva3ms3020 KiB
11Elfogadva3ms3260 KiB
12Elfogadva4ms3412 KiB
13Elfogadva4ms3612 KiB
subtask410/10
14Elfogadva3ms3016 KiB
15Elfogadva3ms3020 KiB
16Elfogadva3ms3260 KiB
17Elfogadva4ms3412 KiB
18Elfogadva4ms3612 KiB
19Elfogadva3ms3436 KiB
20Elfogadva3ms3528 KiB
21Elfogadva9ms3560 KiB
22Elfogadva10ms3560 KiB
23Elfogadva9ms3904 KiB
subtask510/10
24Elfogadva2ms3736 KiB
25Elfogadva3ms3736 KiB
26Elfogadva3ms3736 KiB
27Elfogadva3ms3852 KiB
28Elfogadva3ms3868 KiB
subtask610/10
29Elfogadva3ms3996 KiB
30Elfogadva3ms3996 KiB
31Elfogadva3ms4084 KiB
32Elfogadva3ms4084 KiB
33Elfogadva3ms4200 KiB
subtask758/58
34Elfogadva3ms4200 KiB
35Elfogadva2ms4200 KiB
36Elfogadva3ms4204 KiB
37Elfogadva3ms2088 KiB
38Elfogadva3ms2300 KiB
39Elfogadva3ms2552 KiB
40Elfogadva3ms2756 KiB
41Elfogadva3ms2960 KiB
42Elfogadva3ms3016 KiB
43Elfogadva3ms3020 KiB
44Elfogadva3ms3260 KiB
45Elfogadva4ms3412 KiB
46Elfogadva4ms3612 KiB
47Elfogadva3ms3436 KiB
48Elfogadva3ms3528 KiB
49Elfogadva9ms3560 KiB
50Elfogadva10ms3560 KiB
51Elfogadva3ms3868 KiB
52Elfogadva3ms3996 KiB
53Elfogadva3ms3996 KiB
54Elfogadva3ms4084 KiB
55Elfogadva3ms4084 KiB
56Elfogadva3ms4200 KiB
57Elfogadva3ms4088 KiB
58Elfogadva3ms4208 KiB
59Elfogadva3ms4424 KiB
60Elfogadva3ms4512 KiB
61Elfogadva3ms4508 KiB
62Elfogadva3ms4512 KiB
63Elfogadva3ms4628 KiB
64Elfogadva4ms4644 KiB
65Elfogadva4ms4740 KiB
66Elfogadva7ms4756 KiB