Submission #1251050

#TimeUsernameProblemLanguageResultExecution timeMemory
1251050FernandoJC07World Map (IOI25_worldmap)C++20
7 / 100
19 ms2628 KiB
//#include "worldmap"
#include <vector>
#include <queue>
#include <functional>
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 create_map(int N, int M, vi A, vi B){
    if(N==1) return {{1}};
    vii adj, mapa;
    vi vst;
    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]);}
        
    function<void(int)> dfs = [&](int a){
        //mapa.pb({a});
        vi res;
        vst[a] = 1;
        for(int x: adj[a]){
            res.pb(a); res.pb(x);
        }
        mapa.pb(res);
        mapa.pb({a});
        for(int x: adj[a]){
            if(vst[x]) continue;
            dfs(x);
            mapa.pb({a});
        }
    };
    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...