183212025-10-20 09:55:32szabelrSzínezéscpp17Hibás válasz 11/50411ms4900 KiB
#include <iostream>

using namespace std;
long long golyo[200001];
int main()
{
    int n,q,v=0,vban=0,vhely;
    string x;
    cin>>n>>q;
    cin>>x;
    golyo[0]=2;

    for(int i=1; i<=n; i++){
        if (x[i-1] == '0') {
            golyo[i] = 0;
        }
        else
            golyo[i] = 1;
    }
    golyo[n+1]=2;
    for(int i=2; i<=n; i++){
        if(golyo[i-1]!=golyo[i]){
            if(vban==0){
                v++;
                vban=1;
            }else
            vban=0;
        }

    }

    cout<<v<<endl;
    for(int i=1; i<=q; i++){
        cin>>vhely;
        if(golyo[vhely]==1)
            golyo[vhely]=0;
        else
            golyo[vhely]=1;
        if(golyo[vhely-1]==golyo[vhely] and golyo[vhely+1]==golyo[vhely])
            v--;
        else if((golyo[vhely-1]!=golyo[vhely] and golyo[vhely-1]!=2)  and (golyo[vhely+1]!=golyo[vhely] and golyo[vhely+1]!=2))
            v++;
        cout<<v<<endl;
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base11/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/03ms316 KiB
3Elfogadva2/21ms508 KiB
4Hibás válasz0/21ms512 KiB
5Hibás válasz0/31ms316 KiB
6Hibás válasz0/31ms316 KiB
7Hibás válasz0/33ms316 KiB
8Hibás válasz0/33ms316 KiB
9Hibás válasz0/23ms316 KiB
10Hibás válasz0/23ms316 KiB
11Elfogadva3/3411ms4724 KiB
12Hibás válasz0/3397ms4804 KiB
13Hibás válasz0/3400ms4804 KiB
14Elfogadva3/3411ms4748 KiB
15Elfogadva3/3395ms4800 KiB
16Hibás válasz0/3397ms4804 KiB
17Hibás válasz0/3405ms4804 KiB
18Hibás válasz0/3404ms4900 KiB
19Hibás válasz0/3363ms4804 KiB
20Hibás válasz0/3361ms4804 KiB