# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
899550 |
2024-01-06T12:35:31 Z |
Nonoze |
Miners (IOI07_miners) |
C++17 |
|
358 ms |
756 KB |
#include <bits/stdc++.h>
#define sz(x) (int)(x.size())
using namespace std;
int n;
string seq;
vector<vector<vector<vector<int>>>> dp(4, vector<vector<vector<int>>> (4, vector<vector<int>> (4, vector<int>(4, 0))));
vector<vector<vector<vector<int>>>> lst=dp;
int sum(int a, int b, int c) {
int ans=0;
for (int i=1; i<4; i++) {
if (a==i || b==i || c==i) ans++;
}
return ans;
}
void solve() {
cin >> n;
cin >> seq;
for (int i=n-1; i>=0; i--) {
int vaut=1;
if (seq[i]=='F') vaut=2;
if (seq[i]=='B') vaut=3;
for (int prec11=0; prec11<4; prec11++) {
for (int prec12=0; prec12<4; prec12++) {
for (int prec21=0; prec21<4; prec21++) {
for (int prec22=0; prec22<4; prec22++) {
dp[prec11][prec12][prec21][prec22]=
max(sum(prec11, prec12, vaut)+lst[vaut][prec11][prec21][prec22],
sum(prec21, prec22, vaut)+lst[prec11][prec12][vaut][prec21]);
}
}
}
}
lst=dp;
}
cout << dp[0][0][0][0] << endl;
return;
}
signed main() {
ios::sync_with_stdio(0);
cin.tie(0);
int tt=1;// cin >> tt;
while(tt--) solve();
return 0;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
604 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
344 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
4 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
18 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
37 ms |
348 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
89 ms |
516 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
255 ms |
704 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
358 ms |
756 KB |
Output is correct |