Submission #624299

#TimeUsernameProblemLanguageResultExecution timeMemory
624299moyindavidMechanical Doll (IOI18_doll)C++17
6 / 100
50 ms7360 KiB
#include "doll.h"
#include <bits/stdc++.h>
#define pb push_back
#define ll long long

using namespace std;

void create_circuit(int M, vector<int> A) {
  int N = A.size();
  vector<int> C(M+1,0);
  vector<int> X(M+1,0),Y(M+1,0);
  int a[M+1]{0};

  C[0]=A[0];
  for(int i=0;i<N;i++)a[A[i]]++;
  for (int i = 1; i < N; ++i) {
    if(a[A[i-1]]>1){
        if(X[A[i-1]]==0)X[A[i-1]]=A[i];
        else Y[A[i-1]]=A[i];
    }
    C[A[i-1]]=A[i];
  }

  vector<int> x,y;
  for(int i=1;i<=M;i++){
    if(X[i]==0)continue;
    C[i]=-1 * (x.size()+1);
    x.pb(X[i]);
    y.pb(Y[i]);
  }

  answer(C, x, y);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...