79512024-01-12 08:27:55AblablablaTáblajáték 2 (70 pont)cpp17Elfogadva 70/703ms4264 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

string elem = "0";

void hozzaad(){
    int ind = elem.size() - 1;

    while(ind >= 0 && elem[ind] == '2'){
        elem[ind] = '0';
        ind--;
    }

    if(ind == -1){
        elem = "1" + elem;
    } else{
        if(elem[ind] == '0'){
            elem[ind] = '1';
        } else{
            elem[ind] = '2';
        }
    }
}

void kivon(){
    int ind = elem.size() - 1;

    while(ind >= 0 && elem[ind] == '0'){
        elem[ind] = '2';
        ind--;
    }

    if(elem[ind] == '1'){
        elem[ind] = '0';

        while(elem[0] == '0'){
            elem.erase(elem.begin());
        }

        if(elem.size() == 0){
            elem = "0";
        }
    } else{
        elem[ind] = '1';
    }
}

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

    int sor = 0;

    for(int i = 0; i < k; i++){
        int a;
        cin >> a;

        if(a == 0){
            sor++;
            elem += '0';

            if(elem == "00"){
                elem = "0";
            }
        } else if(a == 1){
            sor++;
            elem += '1';

            if(elem == "01"){
                elem = "1";
            }
        } else if(a == 2){
            sor++;
            elem += '2';

            if(elem == "02"){
                elem = "2";
            }
        } else if(a == 3){
            sor--;
            elem.pop_back();
            if(elem.size() == 0){
                elem = "0";
            }
        } else if(a == 4){
            kivon();
        } else{
            hozzaad();
        }
    }

    cout << sor << "\n";
    cout << elem << "\n";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base70/70
1Elfogadva0/03ms1812 KiB
2Elfogadva0/03ms2060 KiB
3Elfogadva2/23ms2140 KiB
4Elfogadva3/33ms2228 KiB
5Elfogadva3/33ms2472 KiB
6Elfogadva3/33ms2652 KiB
7Elfogadva3/33ms2864 KiB
8Elfogadva3/33ms3076 KiB
9Elfogadva3/33ms3156 KiB
10Elfogadva3/33ms3288 KiB
11Elfogadva3/33ms3368 KiB
12Elfogadva3/33ms3408 KiB
13Elfogadva3/33ms3636 KiB
14Elfogadva3/33ms3872 KiB
15Elfogadva4/43ms3984 KiB
16Elfogadva4/43ms3956 KiB
17Elfogadva4/43ms3884 KiB
18Elfogadva4/42ms3856 KiB
19Elfogadva4/43ms3976 KiB
20Elfogadva4/43ms3988 KiB
21Elfogadva4/43ms4216 KiB
22Elfogadva4/43ms4264 KiB
23Elfogadva3/32ms4260 KiB