Submission #24993

#TimeUsernameProblemLanguageResultExecution timeMemory
24993minimarioNetwork (BOI15_net)C++14
0 / 100
0 ms13736 KiB
#include <bits/stdc++.h> using namespace std; const int MAX = 500000; vector<int> g[MAX]; vector<int> order; void dfs(int u, int p) { for (int i : g[u]) { if (i == p) { continue; } dfs(i, u); } if (g[u].size() == 1) { order.push_back(u); } } int main() { int n; scanf("%d", &n); for (int i = 0; i < n-1; ++i) { int u, v; scanf("%d %d", &u, &v); u--; v--; g[u].push_back(v); g[v].push_back(u); } dfs(0, -1); for (int i = 0; i < order.size(); ++i) { order[i]++; } printf("%d\n", ((int)order.size()+1)/2); for (int i = 0; i < ((int)order.size())/2; ++i) { printf("%d %d\n", order[i], order[order.size()-1-i]); } if (order.size() % 2 == 1) { printf("%d %d\n", order[0], order[order.size()/2]); } }

Compilation message (stderr)

net.cpp: In function 'int main()':
net.cpp:27:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 0; i < order.size(); ++i)
                    ^
net.cpp:18:24: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  int n; scanf("%d", &n);
                        ^
net.cpp:21:35: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   int u, v; scanf("%d %d", &u, &v);
                                   ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...