#include <bits/stdc++.h>
#include "worldmap.h"
using namespace std;
vector <int> VV;
void dfs(vector<vector<int>>& v,int mx,int node,vector<int>& visited){
VV.push_back(node);
int tt=0;
for (int i=0; i<v[node].size(); i++){
if (visited[v[node][i]]==0){
tt++;
visited[v[node][i]]=1;
dfs(v,mx,v[node][i],visited);
VV.push_back(node);
}
}
}
std::vector<std::vector<int>> create_map(int N, int M, std::vector<int> A, std::vector<int> B) {
vector<vector<int>> v(N+1);
vector<vector<int>> vt(N+1, vector<int>(N+1, 0));
for (int i=0; i<M; i++){
v[A[i]].push_back(B[i]);
vt[A[i]][B[i]]=1;
v[B[i]].push_back(A[i]);
vt[B[i]][A[i]]=1;
}
if (N==1){
return vector<vector<int>>{{1}};
}
vector<int> visited(N+1,0);
visited[1]=0;
dfs(v,N,1,visited);
int ln=VV.size();
ln=2*N+VV.size();
vector <vector <int>> ans(ln, vector<int>(ln, 0));
vector <int> vvv(N+1,0);
int k=0;
for (int i=0; i<VV.size(); i++){
if (vvv[VV[i]]==1){
for (int j=0; j<ln; j++){
ans[k][j]=VV[i];
}
k++;
}
else{
vvv[VV[i]]=1;
for (int j=0; j<ln; j++){
ans[k][j]=VV[i];
}
for (int j=0; j<ln; j++){
if (j%2==1 && j<2*N){
if (vt[VV[i]][j/2+1]==1){
ans[k+1][j]=j/2+1;
}
else{
ans[k+1][j]=VV[i];
}
}
else{
ans[k+1][j]=VV[i];
}
}
for (int j=0; j<ln; j++){
ans[k+2][j]=VV[i];
}
k=k+3;
}
}
return (ans);
}
/*
int main() {
int N = 3; // number of nodes
int M = N - 1;
// Build the path: A[i] = i+1, B[i] = i+2
vector<int> A(M), B(M);
for (int i = 0; i < M; i++) {
A[i] = i + 1;
B[i] = i + 2;
}
try {
auto ans = create_map(N, M, A, B);
cout << "create_map ran successfully!\n";
cout << "Resulting 2D map (ans):\n";
for (auto &row : ans) {
for (int x : row) cout << x << " ";
cout << "\n";
}
} catch (const exception &e) {
cerr << "Exception: " << e.what() << "\n";
} catch (...) {
cerr << "Unknown exception occurred!\n";
}
return 0;
}
*/
| # | 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... |