7877 | 2024. 01. 11 16:08:23 | Kristóf | Takaros Sorozat (80 pont) | cpp17 | Időlimit túllépés 24/80 | 500ms | 5648 KiB |
#include <iostream>
using namespace std;
int main()
{
int n;
cin>>n;
string sor;
cin>>sor;
int s[n];
int s2[n];
for (int i=0;i<n;i++){
if(sor[i]=='0'){
s[i]=0;
}
if(sor[i]=='1'){
s[i]=1;
}
s2[i]=s[i];
}
int k;
int v;
for(int i=0;i<n;i++){
if(s[i]==1){
k=i;
break;
}
}
int egy=0;
for(int i=n-1;i>-1;i--){
if(s[i]==0){
v=i+1;
break;
}
}
int count=0;
for(int i=k;i<v;i++){
if(s[i]==1){
count++;
}
}
int darab=v-k;
if(count>=darab-count){
cout<<count<<endl;
}
else {cout<<darab-count<<endl;
egy++;
}
int ans=0;
for(int i=k;i<v-3;i++){
egy=0;
if(darab-count<count){
egy=1;
}
if(s[i]+s[i+1]+s[i+2]+s[i+3]==2){
s[i]=0;
s[i+1]=0;
s[i+2]=0;
s[i+3]=0;
if(egy==1){
s[i]=1;
s[i+1]=1;
s[i+2]=1;
s[i+3]=1;
}
ans++;
}
int la=0;
while(s[k]==0){
k++;
la++;
}
if(la!=0){
i=k;
}
while(v==1){
v--;
}
int l=k;
count=0;
darab=v-k;
while(l<v){
count+=s[l];
l++;
}
}
int l=k;
count=0;
while(l<v){
count+=s[l];
l++;
}
if(darab-count<count){
ans+=darab-count;
}
else ans+=count;
cout<<ans<<endl;
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 24/80 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1808 KiB | |||
2 | Időlimit túllépés | 0/0 | 500ms | 2316 KiB | |||
3 | Részben helyes | 2/4 | 3ms | 2216 KiB | |||
4 | Elfogadva | 4/4 | 3ms | 2428 KiB | |||
5 | Részben helyes | 2/4 | 3ms | 2668 KiB | |||
6 | Részben helyes | 2/4 | 3ms | 2824 KiB | |||
7 | Hibás válasz | 0/4 | 3ms | 2912 KiB | |||
8 | Részben helyes | 2/4 | 3ms | 3032 KiB | |||
9 | Részben helyes | 2/4 | 3ms | 2920 KiB | |||
10 | Részben helyes | 2/4 | 3ms | 3160 KiB | |||
11 | Részben helyes | 2/4 | 3ms | 3372 KiB | |||
12 | Hibás válasz | 0/4 | 3ms | 3492 KiB | |||
13 | Elfogadva | 4/4 | 4ms | 5152 KiB | |||
14 | Időlimit túllépés | 0/4 | 500ms | 3588 KiB | |||
15 | Időlimit túllépés | 0/4 | 462ms | 3920 KiB | |||
16 | Időlimit túllépés | 0/4 | 449ms | 4140 KiB | |||
17 | Részben helyes | 2/4 | 6ms | 5648 KiB | |||
18 | Időlimit túllépés | 0/4 | 500ms | 4268 KiB | |||
19 | Időlimit túllépés | 0/4 | 453ms | 4532 KiB | |||
20 | Időlimit túllépés | 0/4 | 458ms | 4564 KiB | |||
21 | Időlimit túllépés | 0/4 | 469ms | 4636 KiB | |||
22 | Időlimit túllépés | 0/4 | 472ms | 4584 KiB |