#include "worldmap.h"
#include <bits/stdc++.h>
using namespace std;
std::vector<std::vector<int>> create_map(int N, int M, std::vector<int> A, std::vector<int> B) {
vector<vector<int>> adj(N);
for(int i=0;i<M;i++) {
adj[A[i]-1].push_back(B[i]-1);
adj[B[i]-1].push_back(A[i]-1);
}
vector<vector<int>> ans;
vector<bool> vis(N);
auto dfs = [&adj,&vis,&ans,N,cnt=0](auto &dfs, int x) mutable -> void {
vis[x] = 1;
vector<int> nw;
for(auto i: adj[x]) {
if(cnt&1) {
nw.push_back(x+1);
nw.push_back(i+1);
} else {
nw.push_back(i+1);
nw.push_back(x+1);
}
}
while(nw.size()<3*N)
nw.push_back(x+1);
ans.push_back(nw);
cnt++;
for(auto i: adj[x])
if(!vis[i]) {
vector<int> v;
for(int j=0;j<3*N;j++)
v.push_back(((j^cnt)&1?x:i)+1);
ans.push_back(v);
dfs(dfs, i);
v.clear();
for(int j=0;j<3*N;j++)
v.push_back(((j^cnt)&1?i:x)+1);
ans.push_back(v);
}
};
dfs(dfs,0);
while(ans.size()<3*N)
ans.push_back(vector<int>(3*N,1));
return ans;
}
# | 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... |