#include <iostream>
#include <vector>
using namespace std;
int n, m, i, szam, nulla, egy;
char ch;
int main()
{
cin>>n>>m;
vector <bool> x(n+1);
for (i=1; i<=n; ++i)
{
cin>>ch;
x[i]=ch-48;
if (x[i] && !x[i-1]) ++egy;
else if (!x[i] && (x[i-1] || i==1)) ++nulla;
}
cout<<min(nulla,egy)<<"\n";
for (i=1; i<=m; ++i)
{
cin>>szam;
if (x[szam])
{
x[szam]=0;
if (szam==1)
{
if (x[2]) ++nulla;
else --egy;
}else if(szam==n)
{
if (x[n-1]) ++nulla;
else --egy;
}else if (x[szam-1] && x[szam+1])
{
++egy;
++nulla;
}else if (!x[szam-1] && !x[szam+1])
{
--egy;
--nulla;
}
}else
{
x[szam]=1;
if (szam==1)
{
if (!x[2]) ++egy;
else --nulla;
}else if(szam==n)
{
if (!x[n-1]) ++egy;
else --nulla;
}else if (!x[szam-1] && !x[szam+1])
{
++egy;
++nulla;
}else if (x[szam-1] && x[szam+1])
{
--nulla;
--egy;
}
}
cout<<min(egy,nulla)<<"\n";
}
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1692 KiB | |||
2 | Elfogadva | 0/0 | 4ms | 1932 KiB | |||
3 | Elfogadva | 2/2 | 2ms | 2136 KiB | |||
4 | Elfogadva | 2/2 | 2ms | 2612 KiB | |||
5 | Elfogadva | 3/3 | 2ms | 2556 KiB | |||
6 | Elfogadva | 3/3 | 2ms | 2636 KiB | |||
7 | Elfogadva | 3/3 | 3ms | 2564 KiB | |||
8 | Elfogadva | 3/3 | 3ms | 2684 KiB | |||
9 | Elfogadva | 2/2 | 4ms | 2756 KiB | |||
10 | Elfogadva | 2/2 | 4ms | 2964 KiB | |||
11 | Elfogadva | 3/3 | 416ms | 3044 KiB | |||
12 | Elfogadva | 3/3 | 305ms | 3136 KiB | |||
13 | Elfogadva | 3/3 | 303ms | 3044 KiB | |||
14 | Elfogadva | 3/3 | 426ms | 3260 KiB | |||
15 | Elfogadva | 3/3 | 349ms | 3416 KiB | |||
16 | Elfogadva | 3/3 | 326ms | 3504 KiB | |||
17 | Elfogadva | 3/3 | 312ms | 3580 KiB | |||
18 | Elfogadva | 3/3 | 370ms | 3580 KiB | |||
19 | Elfogadva | 3/3 | 300ms | 3708 KiB | |||
20 | Elfogadva | 3/3 | 340ms | 3792 KiB |