229122026-01-16 08:33:24iSamu7598Színezéscpp17Accepted 50/50416ms1824 KiB
#include <iostream>

using namespace std;

int main()
{
int n, m;
cin>>n>>m;
int kek_szakaszok=0, piros_szakaszok=0;
string s;
cin>>s;
char elo=' ';
for(int i=0; i<n; i++){
    if(s[i]!=elo){
        if(s[i]=='0'){
            kek_szakaszok++;
        }
        if(s[i]=='1'){
            piros_szakaszok++;
        }
        elo=s[i];
    }
}
cout<<min(kek_szakaszok, piros_szakaszok)<<endl;
int a;
for(int i=0; i<m; i++){
    cin>>a;
    a--;
    if(a==0){
        if(s[a]==s[a+1]){
            if(s[a]=='0'){
                piros_szakaszok++;
            }
            else{
                kek_szakaszok++;
            }
        }
        else{
            if(s[a]=='0'){
                kek_szakaszok--;
            }
            else{
                piros_szakaszok--;
            }
        }
    }
    else if(a==n-1){
        if(s[a]==s[a-1]){
           if(s[a]=='0'){
                piros_szakaszok++;
            }
            else{
                kek_szakaszok++;
            }
        }
        else{
            if(s[a]=='0'){
                kek_szakaszok--;
            }
            else{
                piros_szakaszok--;
            }
        }
    }

    else{
        if(s[a]==s[a+1]&&s[a]==s[a-1]){
            kek_szakaszok++;
            piros_szakaszok++;
        }
        if(s[a]!=s[a+1]&&s[a]!=s[a-1]){
            kek_szakaszok--;
            piros_szakaszok--;
        }
    }

           if(s[a]=='0'){
        s[a]='1';
       }
       else{
        s[a]='0';
       }
    cout<<min(kek_szakaszok, piros_szakaszok)<<endl;
}


    return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/03ms492 KiB
3Accepted2/21ms316 KiB
4Accepted2/21ms500 KiB
5Accepted3/31ms316 KiB
6Accepted3/31ms316 KiB
7Accepted3/33ms316 KiB
8Accepted3/33ms324 KiB
9Accepted2/22ms316 KiB
10Accepted2/22ms316 KiB
11Accepted3/3388ms1732 KiB
12Accepted3/3389ms1732 KiB
13Accepted3/3416ms1760 KiB
14Accepted3/3388ms1824 KiB
15Accepted3/3405ms1732 KiB
16Accepted3/3405ms1732 KiB
17Accepted3/3393ms1800 KiB
18Accepted3/3388ms1788 KiB
19Accepted3/3405ms1812 KiB
20Accepted3/3386ms1808 KiB