Submission #1293242

#TimeUsernameProblemLanguageResultExecution timeMemory
1293242alexrana2626World Map (IOI25_worldmap)C++20
0 / 100
1137 ms2162688 KiB
#include "worldmap.h" #include <bits/stdc++.h> using namespace std; vector<int> gr[41]; vector<int> v; void dfs(int x, int p) { v.push_back(x); for (int i : gr[x]) { if (i == p) continue; dfs(i, x); v.push_back(x); } } vector<vector<int>> create_map(int N, int M, vector<int> A, vector<int> B) { for (int i = 0; i < 41; i++) gr[i].clear(); v.clear(); if (M == (N * (N-1))/2) { vector<vector<int>> ans1(2 * N, vector<int>(2* N)); int num = 1; for (int i = 0; i < 2 * N; i++) { for (int j = 0; j < 2 * N; j++) { if (i % 2 == 0) ans1[i][j] = num; else { if (j < N) ans1[i][j] = j + 1; else ans1[i][j] = j + 1 - N; } } if (i % 2 == 0) num++; } return ans1; } else { for (int i = 0; i < M; i++) { gr[A[i]].push_back(B[i]); gr[B[i]].push_back(A[i]); } dfs(1, 0); int K = v.size(); vector<vector<int>> ans(K, vector<int>(K)); for (int i = 0; i < K; i++) { for (int j = 0; j < K; j++) { ans[i][j] = v[i]; } } return ans; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...