3458 2023. 02. 28 10:27:42 CWM Táblajáték cpp17 Elfogadva 50/50 3ms 4272 KiB
// nemesGyak000.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main()
{
    vector<int> nbitnum;
    int n;
    cin >> n;
    int level = 0;
    for (size_t i = 0; i < n; i++)
    {
        int ins;
        cin >> ins;
        if (ins == 0) {
            nbitnum.push_back(0);
            level++;
        }
        else if (ins == 1) {
            nbitnum.push_back(1);
            level++;
        }
        else if (ins == 2) {
            nbitnum.pop_back();
            level--;
        }
        else if (ins == 3) {
            for (int i = nbitnum.size()-1; i >= 0; i--)
            {
                if (nbitnum[i] == 0) nbitnum[i] = 1;
                else {
                    nbitnum[i] = 0;
                    break;
                }
            }
        }
        else if (ins == 4) {
            bool tV = false; //testValue
            for (int i = nbitnum.size()-1; i >= 0; i--)
            {
                if (nbitnum[i] == 1) nbitnum[i] = 0;
                else {
                    nbitnum[i] = 1;
                    tV = true;
                    break;
                }
            }
            if (!tV) {
                nbitnum[0] = 1;
                nbitnum.push_back(0);
            }
        }
    }
    string res = "";
    bool hadOne = false;
    for (size_t i = 0; i < nbitnum.size(); i++)
    {
        if (nbitnum[i] == 0 && hadOne) {
            res += '0';
        }
        else if (nbitnum[i] == 1) {
            hadOne = true;
            res += '1';
        }
    }
    if (res == "") res = "0";
    cout << level << "\n" << res << "\n";
}

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu

// Tips for Getting Started: 
//   1. Use the Solution Explorer window to add/manage files
//   2. Use the Team Explorer window to connect to source control
//   3. Use the Output window to see build output and other messages
//   4. Use the Error List window to view errors
//   5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
//   6. In the future, to open this project again, go to File > Open > Project and select the .sln file
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1680 KiB
2 Elfogadva 0/0 3ms 1852 KiB
3 Elfogadva 3/3 3ms 2064 KiB
4 Elfogadva 3/3 3ms 2144 KiB
5 Elfogadva 3/3 3ms 2276 KiB
6 Elfogadva 3/3 3ms 2488 KiB
7 Elfogadva 3/3 3ms 2700 KiB
8 Elfogadva 3/3 3ms 2908 KiB
9 Elfogadva 3/3 3ms 3124 KiB
10 Elfogadva 3/3 3ms 3196 KiB
11 Elfogadva 3/3 3ms 3340 KiB
12 Elfogadva 3/3 3ms 3584 KiB
13 Elfogadva 4/4 3ms 3836 KiB
14 Elfogadva 4/4 3ms 3920 KiB
15 Elfogadva 4/4 3ms 4044 KiB
16 Elfogadva 4/4 3ms 4208 KiB
17 Elfogadva 4/4 3ms 4272 KiB