제출 #409844

#제출 시각아이디문제언어결과실행 시간메모리
409844ruadhan자동 인형 (IOI18_doll)C++17
2 / 100
61 ms7704 KiB
#include <bits/stdc++.h> #include "doll.h" using namespace std; // void answer(vector<int> &C, vector<int> tmp1, vector<int> tmp2) // { // for (auto &x : C) // cout << x << " "; // cout << '\n'; // for (auto x : tmp1) // cout << x << " "; // cout << '\n'; // for (auto x : tmp2) // cout << x << " "; // cout << '\n'; // } void create_circuit(int M, vector<int> A) { int N = A.size(); vector<int> C(M + 1); C[0] = A[0]; vector<int> makes_switces; vector<int> adj[M + 1]; adj[0].push_back(A[0]); for (int i = 0; i < N - 1; i++) { adj[A[i]].push_back(A[i + 1]); if (adj[A[i]].size() == 1) C[A[i]] = A[i + 1]; else makes_switces.push_back(A[i]); } int S = makes_switces.size(); vector<int> X(S), Y(S); for (int i = 0; i < S; i++) { C[makes_switces[i]] = -(i + 1); X[i] = adj[makes_switces[i]][0]; Y[i] = adj[makes_switces[i]][1]; } answer(C, X, Y); } // int main() // { // vector<int> A = {1, 2, 1, 3}; // int M = 4; // create_circuit(M, A); // return 0; // }
#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...