Submission #394455

#TimeUsernameProblemLanguageResultExecution timeMemory
394455AlmaNetwork (BOI15_net)C++14
100 / 100
487 ms51944 KiB
#include <bits/stdc++.h> using namespace std; vector<int> a; void f (int p, int n, vector<vector<int>> & g) { if ((int)g[n].size() == 1) a.push_back(n); for (int c: g[n]) { if (c != p) f (n, c, g); } } int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, u, v, s; cin >> n; vector<vector<int>> g(n, vector<int>()); for (int i = 0; i < n-1; i++) { cin >> u >> v; u--; v--; g[u].push_back(v); g[v].push_back(u); } f (-1, 0, g); cout << ((int)a.size() + 1) / 2 << '\n'; s = (int)a.size() / 2; for (int i = 0; i < s; i++) { cout << a[i] + 1 << ' ' << a[s+i] + 1 << '\n'; } s = (int)a.size(); if (s % 2 == 1) cout << a[0] + 1 << ' ' << a[s-1] + 1 << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...