Submission #1249572

#TimeUsernameProblemLanguageResultExecution timeMemory
1249572FernandoJC07세계 지도 (IOI25_worldmap)C++20
0 / 100
0 ms328 KiB
#include "worldmap"
#include <vector>
using namespace std;
#define vi vector<int>
#define vii vector<vector<int>>
#define For(i, a, n) for(int i = a; i<n; ++i)
#define pb push_back

vii adj;
vi vst;
vii mapa;

vi agg(int a){
    vi res;
    for(int x: adj[a]){
        res.pb(a); res.pb(x);
    }
    return res;
}

void dfs(int a){
    mapa.pb({a});
    mapa.pb(agg(a));
    mapa.pb({a});
    vst[a] = 1;
    for(int x: adj[a]){
        if(vst[x]) continue;
        dfs(x);
    }
}

vii create_map(int N, int M, vi A, vi B){
    adj.resize(N+1);
    vst.resize(N+1, 0);
    For(i, 0, M) {adj[A[i]].pb(B[i]); adj[B[i]].pb(A[i]);}
    dfs(1);
    int k = mapa.size();
    For(i, 0, k){
        int m = k-mapa[i].size();
        while(m--){mapa[i].pb(mapa[i][0]);}
    }
    return mapa;
}
#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...