제출 #1327889

#제출 시각아이디문제언어결과실행 시간메모리
1327889adiyer세계 지도 (IOI25_worldmap)C++20
15 / 100
13 ms2872 KiB
#include "worldmap.h"
#include <bits/stdc++.h>

using namespace std;

int was[45];

vector < int > ans;
vector < int > g[45];

void dfs(int v, int p){
    was[v] = 1, ans.push_back(v);
    for(int u : g[v]){
        if(u == p) continue;
        if(!was[u]) dfs(u, v);
        else ans.push_back(u), ans.push_back(v);
    }
    if(v > 1) ans.push_back(p);
}

vector < vector < int > > create_map(int n, int m, vector < int > a, vector< int > b) {
    ans.clear();
    for(int i = 0; i <= n; i++) g[i].clear(), was[i] = 0;
    for(int i = 0; i < m; i++){
        g[a[i]].push_back(b[i]);
        g[b[i]].push_back(a[i]);
    }
    dfs(1, 1);
    int sz = ans.size();
    vector < vector < int > > ret(sz, vector < int > (sz));
    for(int i = 0; i < sz; i++)
        for(int j = 0; j < sz; j++) 
            ret[i][j] = ans[i];
    assert(ans.size() <= 240);
    return ret;
}
#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...