This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#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> cnt(m+1, 0);
vector<int> used(m+1, 0);
vector<int> X, Y;
for(int i=0;i<n;i++)cnt[a[i]]++;
vector<int> ind(m+1);
int tt = 0;
for(int i=0;i<=m;i++){
if(cnt[i] == 2){
ind[i] = tt;tt++;
X.push_back(0);
Y.push_back(0);
}
}
int now = 0;
for(int i=0;i<n;i++){
if(cnt[now] == 2){
if(used[now]){
Y[ind[now]] = a[i];
now = a[i];
}else {
X[ind[now]] = a[i];
used[now] = 1;
c[now] = -ind[now]-1;
now = a[i];
}
}else {
c[now] = a[i];
now = a[i];
}
}//c[now] = 0;
answer(c, X, Y);
}
/*
3 5
2 1 2 1 3
*/
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |