Submission #1130900

#TimeUsernameProblemLanguageResultExecution timeMemory
1130900ezdubzNetwork (BOI15_net)C++20
0 / 100
8 ms12096 KiB
#include <iostream> #include <vector> using namespace std; #define maxn 500001 vector<int> adj[maxn], l; int leaves = 0, n; void dfs(int cur, int par) { for (int i : adj[cur]) { if (i != par) dfs(i, cur); } if (adj[cur].size() == 1) { leaves++; l.push_back(cur); } } int main() { cin >> n; for (int i = 0; i < n - 1; i++) { int a, b; cin >> a >> b; adj[a].push_back(b); adj[b].push_back(a); } dfs(1, -1); for (int i = 0; i < leaves/2; i++) { cout << l[i] << " " << l[i + leaves/2 + leaves%2] << endl; } if (leaves%2 == 1) cout << 1 << " " << l[leaves/2]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...