Submission #1269303

#TimeUsernameProblemLanguageResultExecution timeMemory
1269303sula2세계 지도 (IOI25_worldmap)C++20
72 / 100
76 ms9544 KiB
#include <bits/stdc++.h>
using namespace std;

vector<int> adj[41];
bool vis[41];

vector<vector<int>> dfs(int s, int u) {
    vis[u] = true;
    vector<vector<int>> G;
    auto r = vector<int>(s, u);
    G.push_back(r);
    G.emplace_back(s, u);
    int p = 0;
    for (int v : adj[u]) {
        G.back()[p] = v;
        p += 2;
    }
    G.push_back(r);
    for (int v : adj[u]) if (!vis[v]) {
        for (auto _ : dfs(s, v))
            G.push_back(_);
        G.push_back(r);
    }
    return G;
}

vector<vector<int>> create_map(int N, int M,
                                         vector<int> A, std::vector<int> B) {
    for (int i = 1; i <= N; i++) {
        adj[i].clear();
        vis[i] = false;
    }
    int s = 4*N - 1;
    for (int i = 0; i < M; i++) {
        adj[A[i]].push_back(B[i]);
        adj[B[i]].push_back(A[i]);
    }
    auto G = dfs(s, 1);
    return G;
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...