Submission #1133130

#TimeUsernameProblemLanguageResultExecution timeMemory
1133130huutuanAncient Machine (JOI21_ancient_machine)C++20
70 / 100
46 ms6596 KiB
#include "Anna.h"
#include <vector>

#include <bits/stdc++.h>

using namespace std;

namespace Anna_solver{
   void solve(int N, vector<char> S){
      int i=0;
      while (i<N && S[i]!='X') ++i;
      vector<int> v(N);
      if (i<N){
         v[i]=1;
         for (int j=i; j<N; ++j) if (S[j]=='Z'){
            int k=j;
            while (k+1<N && S[k+1]=='Z') ++k;
            v[k]=1;
            j=k;
         }
      }
      for (auto &i:v) Send(i);
   }
}

void Anna(int N, std::vector<char> S) {
   Anna_solver::solve(N, S);
}
#include "Bruno.h"
#include <vector>

#include <bits/stdc++.h>

using namespace std;

namespace Bruno_solver{
   void solve(int N, int L, vector<int> A){
      if (*max_element(A.begin(), A.end())==0){
         for (int i=0; i<N; ++i) Remove(i);
         return;
      }
      int x=find(A.begin(), A.end(), 1)-A.begin();
      for (int i=0; i<x; ++i) Remove(i);
      int j=x+1;
      for (int i=x+1; i<N; ++i) if (A[i]==1){
         for (int k=i-1; k>=j; --k) Remove(k);
         Remove(i);
         j=i+1;
      }
      for (int i=j; i<N; ++i) Remove(i);
      Remove(x);
   }
}  // namespace

void Bruno(int N, int L, std::vector<int> A) {
   Bruno_solver::solve(N, L, A);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...