#include <bits/stdc++.h>
using namespace std;
const int K=239;
vector<vector<int>> adj, g;
int j=0;
void dfs(int u, int p){
    for(int i=0;i<K;i++){
        g[i][j]=u;
    }
    j++;
    for(auto v:adj[u]){
        if(v==p)continue;
        dfs(v, u);
        for(int i=0;i<K;i++){
            g[i][j]=u;
        }
        j++;
    }
}
std::vector<std::vector<int>> create_map(int N, int M, std::vector<int> A, std::vector<int> B){
    adj.clear();
    g.clear();
    g.resize(K, vector<int> (K, -1));
    adj.resize(N+1);
    for(int i=0;i<M;i++){
        adj[A[i]].push_back(B[i]);
        adj[B[i]].push_back(A[i]);
    }
    dfs(1, 1);
    int c=g[0][j-1];
    for(int i=0;i<K;i++){
        for(int j0=0;j0<K;j0++){
            if(g[i][j0]==-1){
                g[i][j0]=c;
            }
        }
    }
    return g;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |