Submission #93779

# Submission time Handle Problem Language Result Execution time Memory
93779 2019-01-11T09:19:18 Z kjain_1810 Network (BOI15_net) C++11
63 / 100
7 ms 5240 KB
#include <bits/stdc++.h>
#define pb push_back
#define f first
#define s second
#define ind(a) scanf("%d", &a)
#define inlld(a) scanf("%lld", &a)
#define ind2(a, b) scanf("%d%d", &a, &b)
#define inlld2(a, b) scanf("%lld%lld", &a, &b)
#define ind3(a, b, c) scanf("%d%d%d", &a, &b, &c)
#define inlld3(a, b, c) scanf("%lld%lld%lld", &a, &b, &c)

using namespace std;

const int N=1e5+5;
const int MOD=1e9+7;

typedef long long ll;
typedef long double ld;

ll n;
vector<ll>adj[N], leaf, nonleaf;

void dfs(ll u, ll p)
{
    if(adj[u].size()==1)
        leaf.pb(u);
    else
        nonleaf.pb(u);
    for(auto v:adj[u])
        if(v!=p)
            dfs(v, u);
}

int main() 
{
    inlld(n);
    for(ll a=1; a<n; a++)
    {
        ll u, v;
        inlld2(u, v);
        adj[u].pb(v);
        adj[v].pb(u);
    }
    for(ll a=1; a<=n; a++)
        if(adj[a].size()>1)
        {
            dfs(a, 0);
            break;
        }
    ll ans=((int)leaf.size()+1)/2;
    printf("%lld\n", ans);
    for(ll a=0; a*2+1<leaf.size(); a++)
        printf("%lld %lld\n", leaf[a], leaf[a+(leaf.size()+1)/2]);
    if(leaf.size()%2==1)
        printf("%lld %lld\n", leaf[leaf.size()/2], leaf[0]);
    return 0;
}

Compilation message

net.cpp: In function 'int main()':
net.cpp:52:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(ll a=0; a*2+1<leaf.size(); a++)
                 ~~~~~^~~~~~~~~~~~
net.cpp:6:23: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 #define inlld(a) scanf("%lld", &a)
                  ~~~~~^~~~~~~~~~~~
net.cpp:36:5: note: in expansion of macro 'inlld'
     inlld(n);
     ^~~~~
net.cpp:8:27: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
 #define inlld2(a, b) scanf("%lld%lld", &a, &b)
                      ~~~~~^~~~~~~~~~~~~~~~~~~~
net.cpp:40:9: note: in expansion of macro 'inlld2'
         inlld2(u, v);
         ^~~~~~
# Verdict Execution time Memory Grader output
1 Correct 4 ms 2680 KB Output is correct
2 Correct 4 ms 2680 KB Output is correct
3 Correct 4 ms 2680 KB Output is correct
4 Correct 3 ms 2684 KB Output is correct
5 Correct 4 ms 2680 KB Output is correct
6 Correct 4 ms 2680 KB Output is correct
7 Correct 4 ms 2680 KB Output is correct
8 Correct 4 ms 2652 KB Output is correct
9 Correct 4 ms 2680 KB Output is correct
10 Correct 4 ms 2680 KB Output is correct
11 Correct 4 ms 2680 KB Output is correct
12 Correct 5 ms 2680 KB Output is correct
13 Correct 4 ms 2680 KB Output is correct
14 Correct 4 ms 2680 KB Output is correct
15 Correct 3 ms 2680 KB Output is correct
16 Correct 5 ms 2680 KB Output is correct
17 Correct 4 ms 2680 KB Output is correct
18 Correct 4 ms 2680 KB Output is correct
19 Correct 4 ms 2680 KB Output is correct
20 Correct 3 ms 2680 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 2680 KB Output is correct
2 Correct 4 ms 2680 KB Output is correct
3 Correct 4 ms 2680 KB Output is correct
4 Correct 3 ms 2684 KB Output is correct
5 Correct 4 ms 2680 KB Output is correct
6 Correct 4 ms 2680 KB Output is correct
7 Correct 4 ms 2680 KB Output is correct
8 Correct 4 ms 2652 KB Output is correct
9 Correct 4 ms 2680 KB Output is correct
10 Correct 4 ms 2680 KB Output is correct
11 Correct 4 ms 2680 KB Output is correct
12 Correct 5 ms 2680 KB Output is correct
13 Correct 4 ms 2680 KB Output is correct
14 Correct 4 ms 2680 KB Output is correct
15 Correct 3 ms 2680 KB Output is correct
16 Correct 5 ms 2680 KB Output is correct
17 Correct 4 ms 2680 KB Output is correct
18 Correct 4 ms 2680 KB Output is correct
19 Correct 4 ms 2680 KB Output is correct
20 Correct 3 ms 2680 KB Output is correct
21 Correct 3 ms 2684 KB Output is correct
22 Correct 4 ms 2860 KB Output is correct
23 Correct 5 ms 2808 KB Output is correct
24 Correct 4 ms 2808 KB Output is correct
25 Correct 4 ms 2808 KB Output is correct
26 Correct 4 ms 2808 KB Output is correct
27 Correct 5 ms 2812 KB Output is correct
28 Correct 5 ms 2808 KB Output is correct
29 Correct 4 ms 2808 KB Output is correct
30 Correct 4 ms 2680 KB Output is correct
31 Correct 5 ms 2748 KB Output is correct
32 Correct 4 ms 2680 KB Output is correct
33 Correct 4 ms 2680 KB Output is correct
34 Correct 4 ms 2680 KB Output is correct
35 Correct 4 ms 2680 KB Output is correct
36 Correct 4 ms 2680 KB Output is correct
37 Correct 4 ms 2652 KB Output is correct
38 Correct 4 ms 2680 KB Output is correct
39 Correct 3 ms 2680 KB Output is correct
40 Correct 4 ms 2680 KB Output is correct
41 Correct 4 ms 2684 KB Output is correct
42 Correct 4 ms 2680 KB Output is correct
43 Correct 4 ms 2680 KB Output is correct
44 Correct 4 ms 2680 KB Output is correct
45 Correct 4 ms 2680 KB Output is correct
46 Correct 4 ms 2680 KB Output is correct
47 Correct 4 ms 2680 KB Output is correct
48 Correct 4 ms 2680 KB Output is correct
49 Correct 5 ms 2680 KB Output is correct
50 Correct 4 ms 2680 KB Output is correct
51 Correct 3 ms 2680 KB Output is correct
52 Correct 4 ms 2680 KB Output is correct
53 Correct 5 ms 2680 KB Output is correct
54 Correct 4 ms 2684 KB Output is correct
55 Correct 4 ms 2680 KB Output is correct
56 Correct 4 ms 2680 KB Output is correct
57 Correct 4 ms 2680 KB Output is correct
58 Correct 4 ms 2808 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 2680 KB Output is correct
2 Correct 4 ms 2680 KB Output is correct
3 Correct 4 ms 2680 KB Output is correct
4 Correct 3 ms 2684 KB Output is correct
5 Correct 4 ms 2680 KB Output is correct
6 Correct 4 ms 2680 KB Output is correct
7 Correct 4 ms 2680 KB Output is correct
8 Correct 4 ms 2652 KB Output is correct
9 Correct 4 ms 2680 KB Output is correct
10 Correct 4 ms 2680 KB Output is correct
11 Correct 4 ms 2680 KB Output is correct
12 Correct 5 ms 2680 KB Output is correct
13 Correct 4 ms 2680 KB Output is correct
14 Correct 4 ms 2680 KB Output is correct
15 Correct 3 ms 2680 KB Output is correct
16 Correct 5 ms 2680 KB Output is correct
17 Correct 4 ms 2680 KB Output is correct
18 Correct 4 ms 2680 KB Output is correct
19 Correct 4 ms 2680 KB Output is correct
20 Correct 3 ms 2680 KB Output is correct
21 Correct 3 ms 2684 KB Output is correct
22 Correct 4 ms 2860 KB Output is correct
23 Correct 5 ms 2808 KB Output is correct
24 Correct 4 ms 2808 KB Output is correct
25 Correct 4 ms 2808 KB Output is correct
26 Correct 4 ms 2808 KB Output is correct
27 Correct 5 ms 2812 KB Output is correct
28 Correct 5 ms 2808 KB Output is correct
29 Correct 4 ms 2808 KB Output is correct
30 Correct 4 ms 2680 KB Output is correct
31 Correct 5 ms 2748 KB Output is correct
32 Correct 4 ms 2680 KB Output is correct
33 Correct 4 ms 2680 KB Output is correct
34 Correct 4 ms 2680 KB Output is correct
35 Correct 4 ms 2680 KB Output is correct
36 Correct 4 ms 2680 KB Output is correct
37 Correct 4 ms 2652 KB Output is correct
38 Correct 4 ms 2680 KB Output is correct
39 Correct 3 ms 2680 KB Output is correct
40 Correct 4 ms 2680 KB Output is correct
41 Correct 4 ms 2684 KB Output is correct
42 Correct 4 ms 2680 KB Output is correct
43 Correct 4 ms 2680 KB Output is correct
44 Correct 4 ms 2680 KB Output is correct
45 Correct 4 ms 2680 KB Output is correct
46 Correct 4 ms 2680 KB Output is correct
47 Correct 4 ms 2680 KB Output is correct
48 Correct 4 ms 2680 KB Output is correct
49 Correct 5 ms 2680 KB Output is correct
50 Correct 4 ms 2680 KB Output is correct
51 Correct 3 ms 2680 KB Output is correct
52 Correct 4 ms 2680 KB Output is correct
53 Correct 5 ms 2680 KB Output is correct
54 Correct 4 ms 2684 KB Output is correct
55 Correct 4 ms 2680 KB Output is correct
56 Correct 4 ms 2680 KB Output is correct
57 Correct 4 ms 2680 KB Output is correct
58 Correct 4 ms 2808 KB Output is correct
59 Runtime error 7 ms 5240 KB Execution killed with signal 11 (could be triggered by violating memory limits)
60 Halted 0 ms 0 KB -