7697 | 2024. 01. 10 13:37:55 | Ablablabla | Színezés | cpp17 | Elfogadva 50/50 | 500ms | 6360 KiB |
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, q;
cin >> n >> q;
string s;
cin >> s;
vector<int> szinek(n + 1, 0);
szinek[1] = s[0] - '0';
int valtas = 1;
for(int i = 2; i <= n; i++){
szinek[i] = s[i - 1] - '0';
if(szinek[i] != szinek[i - 1]){
valtas++;
}
}
cout << valtas / 2 << "\n";
for(int i = 0; i < q; i++){
int a;
cin >> a;
szinek[a] = 1 - szinek[a];
if(n == 1){
valtas = 0;
} else if(a == 1){
valtas += (szinek[a] == szinek[a + 1] ? -1 : 1);
} else if(a == n){
valtas += (szinek[a] == szinek[a - 1] ? -1 : 1);
} else{
if(szinek[a - 1] == szinek[a + 1]){
valtas += (szinek[a - 1] == szinek[a] ? -2 : 2);
}
}
cout << valtas / 2 << "\n";
}
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1976 KiB | |||
2 | Elfogadva | 0/0 | 4ms | 2204 KiB | |||
3 | Elfogadva | 2/2 | 3ms | 2320 KiB | |||
4 | Elfogadva | 2/2 | 3ms | 2480 KiB | |||
5 | Elfogadva | 3/3 | 3ms | 2700 KiB | |||
6 | Elfogadva | 3/3 | 3ms | 2940 KiB | |||
7 | Elfogadva | 3/3 | 4ms | 3032 KiB | |||
8 | Elfogadva | 3/3 | 4ms | 3048 KiB | |||
9 | Elfogadva | 2/2 | 4ms | 2984 KiB | |||
10 | Elfogadva | 2/2 | 4ms | 3112 KiB | |||
11 | Elfogadva | 3/3 | 481ms | 5616 KiB | |||
12 | Elfogadva | 3/3 | 301ms | 5704 KiB | |||
13 | Elfogadva | 3/3 | 303ms | 5636 KiB | |||
14 | Elfogadva | 3/3 | 305ms | 5632 KiB | |||
15 | Elfogadva | 3/3 | 305ms | 5632 KiB | |||
16 | Elfogadva | 3/3 | 421ms | 5632 KiB | |||
17 | Elfogadva | 3/3 | 300ms | 5888 KiB | |||
18 | Elfogadva | 3/3 | 303ms | 6264 KiB | |||
19 | Elfogadva | 3/3 | 500ms | 6068 KiB | |||
20 | Elfogadva | 3/3 | 298ms | 6360 KiB |