Submission #602619

#TimeUsernameProblemLanguageResultExecution timeMemory
602619SlavicGMechanical Doll (IOI18_doll)C++17
6 / 100
62 ms12532 KiB
#include "doll.h"
#include "bits/stdc++.h"
using namespace std;

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