69842023-12-23 19:30:10MagyarKendeSZLGSzínezéscpp17Időlimit túllépés 20/50699ms3900 KiB
#include <iostream>
#include <vector>
#include <string>
using namespace std;
#define speed cin.tie(0); ios::sync_with_stdio(0)

vector<bool> balls;
int N, Q;

void solve() {
    int z_sum = 0, o_sum = 0, i = 0;
    while (i < N) {
        if (balls[i]) o_sum++;
        else z_sum++;
        do {
            i++;
        } while (i < N && balls[i - 1] == balls[i]);
    }
    // cout << z_sum << ' ' << o_sum << ' ';
    cout << min(z_sum, o_sum) << '\n';
}

int main() {
    speed;
    string s;
    cin >> N >> Q >> s;
    balls.resize(N);
    for (int i = 0; i < N; i++) {
        balls[i] = s[i] == '1';
    }

    solve();
    while (Q--) {
        int i;
        cin >> i;
        balls[i - 1] = !balls[i - 1];
        solve();
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base20/50
1Elfogadva0/03ms1828 KiB
2Elfogadva0/090ms2172 KiB
3Elfogadva2/23ms2236 KiB
4Elfogadva2/23ms2332 KiB
5Elfogadva3/33ms2692 KiB
6Elfogadva3/33ms2872 KiB
7Elfogadva3/37ms3092 KiB
8Elfogadva3/37ms3152 KiB
9Elfogadva2/27ms3292 KiB
10Elfogadva2/27ms3288 KiB
11Időlimit túllépés0/3699ms3028 KiB
12Időlimit túllépés0/3679ms3228 KiB
13Időlimit túllépés0/3677ms3284 KiB
14Időlimit túllépés0/3670ms3492 KiB
15Időlimit túllépés0/3662ms3416 KiB
16Időlimit túllépés0/3671ms3352 KiB
17Időlimit túllépés0/3675ms3488 KiB
18Időlimit túllépés0/3675ms3900 KiB
19Időlimit túllépés0/3699ms3840 KiB
20Időlimit túllépés0/3649ms3872 KiB