128372025-01-02 00:50:01BucsMateTáblajátékcpp17Accepted 50/501ms560 KiB
#include <iostream>

using namespace std;

void szorzas(int szam[])
{
    if(szam[0] > 1 || szam[1] == 1){
        szam[0]++;
    }
    szam[szam[0]] = 0;
}

void osztas(int szam[])
{
    if(szam[0] == 1){
        szam[1] = 0;
    }
    else{
        szam[0]--;
    }
}

void osszeadas(int szam[])
{
    int index = szam[0];
    while(szam[index] == 1 && index > 0){
        szam[index] = 0;
        index--;
    }
    if(index == 0){
        szam[1] = 1;
        szam[0]++;
        szam[szam[0]] = 0;
    }
    else{
        szam[index] = 1;
    }
}

void kivonas(int szam[])
{
    int index = szam[0];
    while(szam[index] == 0 && index > 0){
        szam[index] = 1;
        index--;
    }
    if(index == 1){
        szam[0]--;
        szam[1] = 1;
    }
    else{
        szam[index] = 0;
    }
}

int main()
{
    int K, lepes;
    cin >> K;
    int szint = 0, poz[1000] = {};
    poz[0] = 1;
    for(int i = 0; i < K; i++){
        cin >> lepes;
        if(lepes == 0){
            //balra lefele
            szint++;
            szorzas(poz);
        }
        else if(lepes == 1){
            //jobbra lefele
            szint++;
            szorzas(poz);
            osszeadas(poz);
        }
        else if(lepes == 2){
            //felfele
            szint--;
            osztas(poz);
        }
        else if(lepes == 3){
            //balra
            kivonas(poz);
        }
        else{
            //jobbra
            osszeadas(poz);
        }
    }
    cout << szint << endl;
    for(int i = 1; i <= poz[0]; i++){
        cout << poz[i];
    }
    cout << endl;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms320 KiB
2Accepted0/01ms320 KiB
3Accepted3/31ms508 KiB
4Accepted3/31ms320 KiB
5Accepted3/31ms392 KiB
6Accepted3/31ms352 KiB
7Accepted3/31ms560 KiB
8Accepted3/31ms512 KiB
9Accepted3/31ms320 KiB
10Accepted3/31ms352 KiB
11Accepted3/31ms320 KiB
12Accepted3/31ms508 KiB
13Accepted4/41ms320 KiB
14Accepted4/41ms544 KiB
15Accepted4/41ms320 KiB
16Accepted4/41ms320 KiB
17Accepted4/41ms320 KiB