182282025-10-14 21:40:31ercseferencTáblajátékcpp17Elfogadva 50/501ms540 KiB
#include <iostream>
using namespace std;
bool a[502];
void plusz(){
    int k=0;
    while(k<502&&a[k]==1){k++;}
    if(k<502)for(int i=0;i<=k;i++){a[i]=!a[i];}}
void minusz(){
    int k=0;
    while(k<502&&a[k]==0){k++;}
    if(k<502)for(int i=0;i<=k;i++){a[i]=!a[i];}}
void ketto(){
    int k=501;
    while(k>=0&&a[k]==0){k--;}
    if(k>=0){for(int i=k;i>=0;i--){a[i+1]=a[i];}
    a[0]=0;}}
void fel(){
    int k=501;
    while(k>=0&&a[k]==0){k--;}
    if(k>=0){for(int i=0;i<=k-1;i++){a[i]=a[i+1];}
    a[k]=0;}}
void kiir(){
    int k=501;
    while(k>=0&&a[k]==0){k--;}
    if(k<0)cout<<"0";
    else for(int i=k;i>=0;i--){cout<<a[i];}
    cout<<" ";}
int main()
{
    int n,x,sor=0;cin>>n;
    for(int i=0;i<n;i++){
        cin>>x;
        if(x==0){sor++;ketto();}
        if(x==1){sor++;ketto();plusz();}
        if(x==2){if(sor>0)sor--;fel();}
        if(x==3){minusz();}
        if(x==4){plusz();}}
    cout<<sor<<endl;
    kiir();
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms512 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms328 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms396 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva3/31ms316 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva3/31ms316 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva3/31ms540 KiB
13Elfogadva4/41ms360 KiB
14Elfogadva4/41ms316 KiB
15Elfogadva4/41ms316 KiB
16Elfogadva4/41ms316 KiB
17Elfogadva4/41ms320 KiB