#include "worldmap.h"
#include <bits/stdc++.h>
using namespace std;
void dfs(int i,vector<vector<int>>& vec,int& j,vector<int> adj[],bool vis[])
{
vis[i]=true;
for(int k=0;k<vec.size();k++)
{
vec[j][k]=i;
}
j++;
int jj=0;
for(auto it : adj[i])
{
vec[j][jj]=it;
jj++;
vec[j][jj]=i;
jj++;
}
for(;jj<vec.size();jj++)
vec[j][jj]=i;
j++;
for(auto it : adj[i])
{
if(vis[it]==false)
{
for(int k=0;k<vec.size();k++)
{
vec[j][k]=i;
}
j++;
dfs(it,vec,j,adj,vis);
}
}
if(i!=1)
{
for(int k=0;k<vec.size();k++)
{
vec[j][k]=i;
}
j++;
}
}
vector<vector<int>> create_map(int N, int M, vector<int> A, vector<int> B)
{
vector<int> adj[100000];
bool vis[1000000]={};
int j=0;
vector<vector<int>> vec;
vector<int> temp;
for(int i=0;i<N*2+2*(N-1);i++)
{
temp.push_back(-1);
}
for(int i=0;i<N*2+2*(N-1);i++)
{
vec.push_back(temp);
}
for(int i=0;i<A.size();i++)
{
int a=A[i],b=B[i];
adj[a].push_back(b);
adj[b].push_back(a);
}
dfs(1,vec,j,adj,vis);
return vec;
}
# | 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... |