#include "worldmap.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define sp <<" "<<
#define endl "\n"
vector<vector<int>> create_map(int N, int M, vector<int> A, vector<int> B) {
// subtask 1
// vector<vector<int>> ans(N, vector<int>(N));
// deque<int> o(N);
// for (int i = 0; i < N; i++) {
// fill(o.begin(), o.end(), i+1);
// ans[i] = vector<int>(o.begin(), o.end());
// }
// subtask 3
// rainbow?
// vector<vector<int>> ans(N, vector<int>(N));
// deque<int> o(N);
// iota(o.begin(), o.end(), 1);
// for (int i = 0; i < N; i++) {
// ans[i] = vector<int>(o.begin(), o.end());
// for (int j = 0; j < i+1; j++) {
// o.push_front(o.back());
// o.pop_back();
// }
// }
// subtask 2/4
vector<vector<pair<int, int>>> adj(N+1);
for (int i = 0; i < M; i++) {
adj[A[i]].emplace_back(B[i], i);
adj[B[i]].emplace_back(A[i], i);
}
vector<int> sigma;
vector<bool> vis(M);
auto dfs = [&](auto &&dfs, int u) -> void {
sigma.push_back(u);
for (auto &[v, id] : adj[u]) {
if (vis[id]) continue;
vis[id] = true;
dfs(dfs, v);
sigma.push_back(u);
}
};
dfs(dfs, 1);
int K = sigma.size();
assert(K <= 250);
vector<vector<int>> ans(K, vector<int>(K));
for (int i = 0; i < K; i++) ans[i] = sigma;
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... |