#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) {
VV.clear();
vector<vector<int>> v(N+1);
vector<vector<int>> vt(N+1, vector<int>(N+1, 0));
for (int i=1; i<=N; i++){
vt[i][i]=1;
}
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]=1;
dfs(v,N,1,visited);
int ln=VV.size();
ln=N+VV.size();
vector <vector <int>> ans(ln, vector<int>(ln, 1));
vector <int> vvv(N+1,0);
int k=1;
int ps=1;
for (int i=0; i<VV.size(); i++){
if (vvv[VV[i]]==1){
for (int j=0; j<ln; j++){
if (j%2==ps)ans[k-1][j]=VV[i];
}
for (int j=0; j<ln; j++){
if (j%2==(1-ps))ans[k][j]=VV[i];
}
k++;
}
else{
vvv[VV[i]]=1;
if (k==1){
k--;
}
else{
for (int j=0; j<ln; j++){
if (j%2==ps)ans[k-1][j]=VV[i];
}
}
for (int j=0; j<ln; j++){
if (j%2==ps && j<2*N){
if (vt[VV[i]][j/2+1]==1){
ans[k][j]=j/2+1;
}
else{
ans[k][j]=VV[i];
}
}
else{
ans[k][j]=VV[i];
}
}
for (int j=0; j<ln; j++){
if (j%2==ps)ans[k+1][j]=VV[i];
}
k=k+2;
ps=1-ps;
}
}
return (ans);
}
/*
int main() {
vector<int> A = {1, 1, 2};
vector<int> B = {2, 3, 3};
try {
auto ans = create_map(3, 3, A, B);
cout << "Map generated successfully!\n";
for (auto &row : ans) {
for (int x : row) cout << x << " ";
cout << "\n";
}
} catch (const std::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... |