Submission #956732

# Submission time Handle Problem Language Result Execution time Memory
956732 2024-04-02T11:59:02 Z DeltaStruct Miners (IOI07_miners) C++17
53 / 100
1500 ms 604 KB
#include <bits/stdc++.h>
using namespace std;
 
int main(){
  int n,id=numeric_limits<int>::lowest(); cin >> n; string s; cin >> s; vector dp(4,vector(4,vector(4,vector<int>(4,id))));
  string u = "MFB"; dp[3][3][3][3] = 0; auto res = dp;
  for (char a:s){
    int t = find(u.begin(),u.end(),a)-u.begin();
    for (int i(0);i < 4;++i) for (int k(0);k < 4;++k) for (int j(0);j < 4;++j) for (int l(0);l < 4;++l){
      if (dp[i][k][j][l]!=3){
        {
          set<int> s = {i,k,t}; if (s.find(3)!=s.end()) s.erase(3);
          res[k][t][j][l] = max(res[k][t][j][l],dp[i][k][j][l]+(int)s.size());
        }
        {
          set<int> s = {j,l,t}; if (s.find(3)!=s.end()) s.erase(3);
          res[i][k][l][t] = max(res[i][k][l][t],dp[i][k][j][l]+(int)s.size());
        }
      }
    }
    swap(dp,res);
  }
  int r = 0;
  for (int i(0);i < 4;++i) for (int k(0);k < 4;++k) for (int j(0);j < 4;++j) for (int l(0);l < 4;++l){
    r = max(r,dp[i][k][j][l]);
  }
  cout << r << endl;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 432 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 1 ms 348 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 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 46 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 221 ms 436 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 455 ms 448 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1174 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 1555 ms 604 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1532 ms 604 KB Time limit exceeded
2 Halted 0 ms 0 KB -