#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
int ship,production,cont1,cont2;
using namespace std;
string mine1;
string mine2;
int main(){
while(cin>>ship){
char food[ship];
for(int a=0;a<ship;a++){
cin>>food[a];
}
cont1=1;
cont2=0;
mine1[0]=food[0];
production=1;
for(int b=1;b<ship;b++){
if(cont1==1&&cont2==0){
if(food[b]!=mine1[cont1-1]) mine1[cont1]=food[b],cont1++,production+=2;
else mine2[cont2]=food[b],cont2++,production++;
}
else if(cont1>=2&&cont2==0){
if(food[b]!=mine1[cont1-1]&&mine1[cont1-1]!=mine1[cont1-2]&&food[b]!=mine1[cont1-2]) mine1[cont1]=food[b],cont1++,production+=3;
else if(food[b]!=mine1[cont1-1]||mine1[cont1-1]!=mine1[cont1-2]||food[b]!=mine1[cont1-2]) mine1[cont1]=food[b],cont1++,production+=2;
else mine2[cont2]=food[b],cont2++,production++;
}
else if(cont1==1&&cont2==1){
if (food[b]!=mine1[cont1-1]) mine1[cont1]=food[b],cont1++,production+=2;
else if(food[b]!=mine2[cont2-1]) mine2[cont2]=food[b],cont2++,production+=2;
else mine1[cont1]=food[b],cont1++,production++;
}
else if(cont1>=2&&cont2==1){
if (food[b]!=mine1[cont1-1]&&food[b]!=mine1[cont1-2]&&mine1[cont1-1]!=mine1[cont1-2])mine1[cont1]=food[b],cont1++,production+=3;
else if(food[b]!=mine2[cont2-1])mine2[cont2]=food[b],cont2++,production+=2;
else if(food[b]!=mine1[cont1-1]||food[b]!=mine1[cont1-2]||mine1[cont1-1]!=mine1[cont1-2])mine1[cont1]=food[b],cont1++,production+=2;
else mine1[cont1]=food[b],cont1++,production++;
}
else{
if (food[b]!=mine1[cont1-1]&&food[b]!=mine1[cont1-2]&&mine1[cont1-1]!=mine1[cont1-2])mine1[cont1]=food[b],cont1++,production+=3;
else if(food[b]!=mine2[cont2-1]&&food[b]!=mine2[cont2-2]&&mine2[cont2-1]!=mine2[cont2-2])mine2[cont2]=food[b],cont2++,production+=3;
else if(food[b]!=mine1[cont1-1]||food[b]!=mine1[cont1-2]||mine1[cont1-1]!=mine1[cont1-2])mine1[cont1]=food[b],cont1++,production+=2;
else if(food[b]!=mine2[cont2-1]||food[b]!=mine2[cont2-2]||mine2[cont2-1]!=mine2[cont2-2])mine2[cont2]=food[b],cont2++,production+=2;
else mine1[cont1]=food[b],cont1++,production++;
}
}
cout<<production<<endl;
}
return 0;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
364 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
364 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
1 ms |
364 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
1 ms |
364 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
1 ms |
364 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
1 ms |
492 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
1 ms |
372 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
2 ms |
492 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
2 ms |
492 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
4 ms |
548 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
5 ms |
620 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Runtime error |
7 ms |
692 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |