# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
305458 | 2020-09-23T08:46:52 Z | shahriarkhan | Network (BOI15_net) | C++14 | 11 ms | 12032 KB |
#include<bits/stdc++.h> using namespace std ; const int siz = 5e5 + 69 ; vector<int> adj[siz] , ar ; int deg[siz] ; void dfs(int s , int p) { if(deg[s]==1) ar.push_back(s) ; for(int t : adj[s]) { if(t==p) continue ; dfs(t,s) ; } } int main() { int n ; scanf("%d",&n) ; for(int i = 1 ; i < n ; ++i) { int u , v ; scanf("%d%d",&u,&v) ; adj[u].push_back(v) ; adj[v].push_back(u) ; ++deg[u] , ++deg[v] ; } dfs(1,0) ; int six = ar.size() ; printf("%d\n",(six+1)/2) ; if(six%2) { ar.push_back(ar[0]) ; ++six ; } else swap(ar[0],ar[six-2]) ; for(int i = 0 ; i < six ; i += 2) { printf("%d %d\n",ar[i],ar[i+1]) ; } return 0 ; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 11 ms | 12032 KB | Output is correct |
2 | Incorrect | 10 ms | 12032 KB | Breaking single line is causing network to disconnect. |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 11 ms | 12032 KB | Output is correct |
2 | Incorrect | 10 ms | 12032 KB | Breaking single line is causing network to disconnect. |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 11 ms | 12032 KB | Output is correct |
2 | Incorrect | 10 ms | 12032 KB | Breaking single line is causing network to disconnect. |
3 | Halted | 0 ms | 0 KB | - |