Submission #295964

#TimeUsernameProblemLanguageResultExecution timeMemory
295964AutoratchMechanical Doll (IOI18_doll)C++14
6 / 100
104 ms14304 KiB
#include "doll.h"
#include <bits/stdc++.h>
using namespace std;

const int N = 2e5 + 1;

int sw;
vector<int> nxt[N];

void create_circuit(int m,vector<int> a) 
{
    int n = a.size();
    vector<int> c(m+1),x,y;
    a.push_back(0);
    for(int i = 0;i < n;i++) nxt[a[i]].push_back(a[i+1]);
    c[0] = a[0];
    for(int i = 1;i <= m;i++) if(!nxt[i].empty())
    {
        if(nxt[i].size()==1) c[i] = nxt[i][0];
        else if(nxt[i].size()==2) 
        {
            c[i] = ++sw;
            c[i] = -c[i];
            x.push_back(nxt[i][0]);
            y.push_back(nxt[i][1]);
        }
    }
    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...