QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#829932#9911. 路南柯hhoppitree#26.271286 37ms3812kbC++141.2kb2024-12-24 14:53:232024-12-24 14:53:24

Judging History

你现在查看的是最新测评结果

  • [2024-12-24 14:53:24]
  • 评测
  • 测评结果:26.271286
  • 用时:37ms
  • 内存:3812kb
  • [2024-12-24 14:53:23]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

const int N = 105;

vector<int> G[N];
int deg[N], vis[N];

signed main() {
    int T; scanf("%d", &T);
    while (T--) {
        int n; scanf("%d", &n);
        for (int i = 1; i <= n; ++i) G[i].clear();
        for (int i = 1, x, y; i < n; ++i) {
            scanf("%d%d", &x, &y), G[x].push_back(y), G[y].push_back(x);
        }
        mt19937 rnd;
        vector<int> z;
        for (int i = 1; i <= n; ++i) {
            if (G[i].size() == 1) z.push_back(i);
        }
        z.pop_back();
        printf("%d\n", (int)z.size());
        for (auto x : z) {
            vector<int> val;
            memset(vis, 0, sizeof(vis));
            vis[x] = 1;
            vector<int> Q;
            Q.push_back(x);
            while (!Q.empty()) {
                int v = Q[rnd() % Q.size()]; Q.erase(find(Q.begin(), Q.end(), v));
                val.push_back(v);
                shuffle(G[v].begin(), G[v].end(), rnd);
                for (auto w : G[v]) if (!vis[w]++) Q.push_back(w);
            }
            reverse(val.begin(), val.end());
            for (int i = 0; i < n; ++i) printf("%d%c", val[i], " \n"[i + 1 == n]);
        }
    }
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 5.6454
Acceptable Answer

Test #1:

score: 5.6454
Acceptable Answer
time: 1ms
memory: 3812kb

input:

10
10
4 2
5 1
8 6
1 9
3 7
1 8
10 2
6 4
3 4
10
4 3
3 1
5 3
6 3
2 3
8 7
8 2
7 10
8 9
10
5 4
10 8
10 3
6 3
9 8
1 10
4 2
2 7
8 4
10
10 6
6 8
1 7
2 6
3 5
3 9
4 2
6 9
3 1
10
2 8
10 4
9 1
9 3
5 7
6 3
1 8
8 7
4 2
10
9 2
9 1
7 1
5 6
8 2
3 9
5 10
5 4
1 10
10
2 9
8 1
8 5
6 3
7 1
6 2
9 8
2 10
4 2
10
5 7
6 2
8 7...

output:

3
10 2 9 7 3 4 6 8 1 5
5 9 1 10 2 8 6 4 3 7
10 2 7 3 4 6 8 5 1 9
5
10 9 7 8 2 6 5 4 3 1
10 7 9 8 2 5 1 6 3 4
10 9 7 6 8 2 4 1 3 5
10 7 4 1 9 8 2 5 3 6
1 4 6 5 10 3 7 2 8 9
4
7 5 2 4 9 8 6 3 10 1
6 3 9 1 10 8 7 2 4 5
7 5 2 9 4 8 1 10 3 6
6 1 3 10 9 8 5 4 2 7
4
7 1 10 5 3 8 9 6 2 4
4 2 8 10 6 9 7 1 3 ...

result:

points 0.28227 Partial correct.

Subtask #2:

score: 20.6259
Acceptable Answer

Test #2:

score: 20.6259
Acceptable Answer
time: 37ms
memory: 3812kb

input:

100
100
90 19
79 98
23 34
50 41
31 52
61 19
50 30
49 5
95 65
22 44
72 89
49 77
27 7
48 2
28 25
56 12
97 63
98 43
10 4
50 33
12 13
54 16
100 43
23 69
53 5
56 85
39 6
64 92
100 59
2 71
44 29
59 97
64 39
75 53
59 89
16 35
67 16
6 43
38 51
36 22
58 70
3 29
9 61
99 11
49 95
27 72
73 89
23 3
14 3
61 57
26...

output:

37
71 31 52 2 48 40 91 76 88 37 54 78 67 16 84 20 79 26 35 92 64 66 39 93 47 24 45 6 98 82 43 57 10 100 7 9 61 94 19 4 27 28 72 51 80 34 38 75 90 87 15 25 65 53 95 62 63 42 97 59 77 89 49 81 73 17 5 36 60 22 69 14 23 68 21 3 41 44 29 33 50 58 83 8 86 70 30 46 55 99 18 11 85 32 74 96 56 12 13 1
1 85 ...

result:

points 0.2578235734 Partial correct.