Submission #1274790

#TimeUsernameProblemLanguageResultExecution timeMemory
1274790nicolo_010자동 인형 (IOI18_doll)C++20
16 / 100
47 ms11412 KiB
#include <bits/stdc++.h> #include "doll.h" using namespace std; using ll = long long; using pii = pair<int, int>; void create_circuit(int M, std::vector<int> A) { A.push_back(0); int N = A.size(); vector<int> C(M+1); vector<int> X, Y; vector<vector<int>> after(M+1); for (int i=0; i<N; i++) { after[A[i]].push_back(A[(i+1)%N]); } int S=0; for (int i=0; i<M+1; i++) { int sz = after[i].size(); if (sz == 0) { ; } else if (sz == 1) { C[i] = after[i][0]; } else if (sz == 2) { C[i] = --S; X.push_back(after[i][0]); Y.push_back(after[i][1]); } else if (sz <= 4) { C[i] = --S; X.push_back(--S); Y.push_back(--S); if (sz == 3) { X.push_back(C[i]); Y.push_back(after[i][1]); X.push_back(after[i][0]); Y.push_back(after[i][2]); } else { X.push_back(after[i][0]); Y.push_back(after[i][2]); X.push_back(after[i][1]); Y.push_back(after[i][3]); } } } 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...