#include <iostream>
#include <iomanip>
#include <cmath>
#include <algorithm>
#include <utility>
#include <cstdio>
#include <vector>
#include <queue>
#include <stack>
#include <fstream>
using namespace std;
vector<int>dp;
int maximo(int u1,int u2,int v1,int v2,int n,vector<int>a,int cu,int cv){
if(n==a.size()){
return cu+cv;
}
int x,x1;
if(u1!=-1 && u2!=-1){
if(u1!=u2 && u1!=a[n] && a[n]!=u2)x=3;
else if(u1!=u2 || u1!=a[n]||u2!=a[n])x=2;
else x=1;
}
else if(u2!=-1){
x1=0;
if(u2!=a[n])x=2;
else x=1;
}
else{
x=1;
x1=0;
}
int y,y1;
if(v1!=-1 && v2!=-1){
if(v1!=v2 && v1!=a[n] && a[n]!=v2)y=3;
else if(v1!=v2 || v1!=a[n]||v2!=a[n])y=2;
else y=1;
}
else if(v2!=-1){
y1=0;
if(u2!=a[n])y=2;
else y=1;
}
else{
y=1;
y1=0;
}
y1=0;
x1=0;
return max(maximo(u2,a[n],v1,v2,n+1,a,cu+x,cv+y1),maximo(u1,u2,v2,a[n],n+1,a,cu+x1,cv+y));
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
int n;
cin>>n;
string s;
cin>>s;
vector<int>a(n);
for(int i=0;i<n;i++){
if(s[i]=='M')a[i]=0;
else if(s[i]=='B')a[i]=1;
else a[i]=2;
}
cout<<maximo(-1,-1,-1,-1,0,a,0,0);
return 0;
}
Compilation message
miners.cpp: In function 'int maximo(int, int, int, int, int, std::vector<int>, int, int)':
miners.cpp:14:5: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
14 | if(n==a.size()){
| ~^~~~~~~~~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
1 ms |
204 KB |
Output isn't correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
3 ms |
204 KB |
Output isn't correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
13 ms |
320 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
48 ms |
204 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
101 ms |
296 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1569 ms |
292 KB |
Time limit exceeded |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1558 ms |
4604 KB |
Time limit exceeded |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1582 ms |
99528 KB |
Time limit exceeded |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1600 ms |
394540 KB |
Time limit exceeded |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
205 ms |
524292 KB |
Execution killed with signal 9 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
251 ms |
524292 KB |
Execution killed with signal 9 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
232 ms |
524292 KB |
Execution killed with signal 9 |