#include "worldmap.h"
bool ff[100][100];
bool f[100];
std::vector<std::vector<int>> ans;
void dfs(int to, int from, int N)
{
f[to] = true;
ans.push_back(std::vector<int>(N, to));
ans.push_back(std::vector<int>());
for (int i = 1; i <= N; i++)
{
if (ff[to][i])
{
ans.back().push_back(i);
ans.back().push_back(to);
}
}
ans.push_back(std::vector<int>(N, to));
bool ex = false;
for (int i = 1; i <= N; i++)
{
if (ff[to][i] && !f[i])
{
dfs(i, to, N);
ex = true;
}
}
ans.push_back(std::vector<int>(N, from));
}
std::vector<std::vector<int>> create_map(int N, int M, std::vector<int> A, std::vector<int> B)
{
if (N == 1)
{
return {{1}};
}
if (N == 2)
{
return {{1, 2}, {1, 2}};
}
std::fill(&ff[0][0], &ff[0][0] + sizeof(ff), false);
for (int i = 0; i < M; i++)
{
ff[A[i]][B[i]] = true;
ff[B[i]][A[i]] = true;
}
std::fill(f, f + 100, false);
ans.clear();
dfs(1, 1, N);
for (int i = 0; i < ans.size(); i++)
{
while (ans[i].size() < ans.size())
{
ans[i].push_back(ans[i].back());
}
}
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... |