38572023-03-03 12:17:59ZsofiaKeresztelySzínezéscpp14Elfogadva 50/50521ms7216 KiB
#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n, q, val=0;
    cin >> n >> q;
    vector<int> b(n+1);
    b[0] = -1;
    for (int i=1; i<=n; i++){
        char c;
        cin >> c;
        b[i] = c - '0';
        if (b[i] != b[i-1]) val++;
    }
    val;
    cout << val/2 << "\n";
    b.push_back(-1);
    while (q--){
        int a;
        cin >> a;
        b[a] = 1 - b[a];
        if (n == 1){
            val = 0;
        }
        else if (a == 1 || a == n){
            val += (b[a-1] == b[a] || b[a+1] == b[a]) ? -1 : +1;
        }
        else if (b[a-1] == b[a+1]) val += (b[a-1] == b[a]) ? -2 : +2;
        cout << val/2 << "\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1808 KiB
2Elfogadva0/06ms2264 KiB
3Elfogadva2/23ms2268 KiB
4Elfogadva2/22ms2304 KiB
5Elfogadva3/32ms2300 KiB
6Elfogadva3/32ms2304 KiB
7Elfogadva3/34ms2444 KiB
8Elfogadva3/34ms2672 KiB
9Elfogadva2/24ms2868 KiB
10Elfogadva2/24ms2976 KiB
11Elfogadva3/3505ms6212 KiB
12Elfogadva3/3463ms6424 KiB
13Elfogadva3/3517ms6528 KiB
14Elfogadva3/3411ms6852 KiB
15Elfogadva3/3319ms6872 KiB
16Elfogadva3/3307ms6820 KiB
17Elfogadva3/3500ms7100 KiB
18Elfogadva3/3439ms7056 KiB
19Elfogadva3/3521ms7036 KiB
20Elfogadva3/3298ms7216 KiB