183542025-10-21 07:45:35szabelrSzínezéscpp17Elfogadva 50/50412ms3456 KiB
#include <iostream>

using namespace std;
long long golyo[200001];
int main()
{
    long long n,q,v=0,vban=0,vhely;
    string x;
    cin>>n>>q;
    cin>>x;
    for(int i=1; i<=n; i++){
        if (x[i-1] == '0') {
            golyo[i] = 0;
        }
        else
            golyo[i] = 1;
    }
    for(int i=2; i<=n; i++){
        if(golyo[i-1]!=golyo[i]){
            v++;
        }

    }
    cout<<(v+1)/2<<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 (vhely-1)!=0){
            v--;
        }

         if(golyo[vhely+1]==golyo[vhely]and (vhely+1)!=n+1){
            v--;
        }
         if(golyo[vhely-1]!=golyo[vhely]and (vhely-1)!=0)
            v++;
         if(golyo[vhely+1]!=golyo[vhely] and (vhely+1)!=n+1)
            v++;

        cout<<(v+1)/2<<endl;
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/03ms768 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/33ms508 KiB
8Elfogadva3/33ms316 KiB
9Elfogadva2/23ms316 KiB
10Elfogadva2/23ms508 KiB
11Elfogadva3/3409ms3436 KiB
12Elfogadva3/3398ms3424 KiB
13Elfogadva3/3407ms3412 KiB
14Elfogadva3/3398ms3400 KiB
15Elfogadva3/3397ms3264 KiB
16Elfogadva3/3409ms3332 KiB
17Elfogadva3/3411ms3268 KiB
18Elfogadva3/3397ms3456 KiB
19Elfogadva3/3412ms3268 KiB
20Elfogadva3/3395ms3268 KiB