230612026-01-16 11:29:58mikloshunorSzínezéscpp17Hibás válasz 0/50699ms3044 KiB
#include <iostream>
#include <vector>

using namespace std;

int main()
{
    int n, q;
    cin >> n >> q;
    vector <char> v(n);
    int db = 0;
    string szinek;
    cin >> szinek;
    for (int i = 0; i < n; i++)
    {
        v[i] = szinek[i];
        if (v[i] == '1')
        {
            db++;
        }
    }
    vector <int> sz(q);
    for (int i = 0; i < q; i++)
    {
        cin >> sz[i];
        sz[i]--;
    }
    cout << db << endl;
    int j;
    for (int i = 0; i < q; i++)
    {
        if (v[sz[i]] == '0')
        {
            j = i;
            do
            {
                v[sz[j]] = '1';
                sz[j]--;
                db++;
            }
            while(v[sz[j]] == '0' && j > 0);
        }
        else
        {
            j = i;
            do
            {
                v[sz[j]] = '0';
                sz[j]++;
                db--;
            }
            while(v[sz[j]] == '1' && j < n);
        }
        if (db <= n / 2)
        {
            cout << db << endl;
        }
        else
        {
            cout << db - n << endl;
        }
    }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Hibás válasz0/01ms316 KiB
2Hibás válasz0/03ms316 KiB
3Hibás válasz0/21ms316 KiB
4Hibás válasz0/21ms500 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/24ms508 KiB
11Hibás válasz0/3414ms3044 KiB
12Hibás válasz0/3400ms2744 KiB
13Hibás válasz0/3412ms2736 KiB
14Hibás válasz0/3400ms2848 KiB
15Hibás válasz0/3388ms3012 KiB
16Hibás válasz0/3389ms2992 KiB
17Hibás válasz0/3418ms2744 KiB
18Időlimit túllépés0/3699ms1900 KiB
19Hibás válasz0/3391ms2756 KiB
20Hibás válasz0/3411ms2752 KiB