QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#561627#9189. Make them Meetucup-team00424 2ms3832kbC++202.6kb2024-09-13 02:47:392024-09-13 02:47:39

Judging History

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

  • [2024-09-13 02:47:39]
  • 评测
  • 测评结果:24
  • 用时:2ms
  • 内存:3832kb
  • [2024-09-13 02:47:39]
  • 提交

answer

#include <bits/stdc++.h>

using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    
    int N, M;
    std::cin >> N >> M;
    
    std::vector<std::vector<int>> adj(N);
    for (int i = 0; i < M; i++) {
        int u, v;
        std::cin >> u >> v;
        adj[u].push_back(v);
        adj[v].push_back(u);
    }
    
    std::vector<bool> vis(N);
    std::vector<int> dep(N), p(N);
    p[0] = -1;
    auto dfs = [&](auto &self, int x) -> void {
        vis[x] = true;
        for (auto y : adj[x]) {
            if (!vis[y]) {
                dep[y] = dep[x] + 1;
                p[y] = x;
                self(self, y);
            }
        }
    };
    dfs(dfs, 0);
    
    if (*std::max_element(dep.begin(), dep.end()) == N - 1) {
        std::cout << 2 * N << "\n";
        for (int i = 0; i < 2 * N; i++) {
            for (int x = 0; x < N; x++) {
                int c;
                if (dep[x] % 2 == i % 2) {
                    c = x;
                } else if (x != 0) {
                    c = p[x];
                } else {
                    c = 0;
                }
                std::cout << c << " \n"[x == N - 1];
            }
        }
        return 0;
    }
    
    int u = 0;
    std::vector<int> deg(N);
    for (int i = 1; i < N; i++) {
        deg[p[i]]++;
    }
    for (int i = 0; i < N; i++) {
        if (dep[i] > dep[u] && deg[i] > 1) {
            u = i;
        }
    }
    int f = p[u];
    std::vector<bool> ef(N);
    for (auto y : adj[f]) {
        ef[y] = true;
    }
    
    int v = -1;
    for (int i = 0; i < N; i++) {
        if (p[i] == u) {
            if (v == -1 || !ef[i]) {
                v = i;
            }
        }
    }
    assert(v != -1);
    
    std::fill(vis.begin(), vis.end(), false);
    std::fill(p.begin(), p.end(), -1);
    dep[v] = 0;
    std::swap(adj[v][0], *std::find(adj[v].begin(), adj[v].end(), u));
    if (!ef[v]) {
        std::swap(adj[u][0], *std::find(adj[u].begin(), adj[u].end(), f));
    } else {
        std::swap(adj[u].back(), *std::find(adj[u].begin(), adj[u].end(), f));
    }
    
    std::cout << 2 * N << "\n";
    for (int i = 0; i < 2 * N; i++) {
        for (int x = 0; x < N; x++) {
            int c;
            if (dep[x] % 2 == i % 2) {
                c = x;
            } else if (x != v) {
                c = p[x];
            } else {
                c = u;
            }
            std::cout << c << " \n"[x == N - 1];
        }
    }
    
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 10
Accepted
time: 0ms
memory: 3536kb

input:

2 1
0 1

output:

4
0 0
0 1
0 0
0 1

result:

points 1.0

Test #2:

score: 0
Wrong Answer
time: 0ms
memory: 3756kb

input:

3 2
0 1
0 2

output:

6
0 -1 2
-1 1 0
0 -1 2
-1 1 0
0 -1 2
-1 1 0

result:

wrong answer Integer -1 violates the range [0, 3]

Subtask #2:

score: 13
Accepted

Test #6:

score: 13
Accepted
time: 0ms
memory: 3536kb

input:

2 1
0 1

output:

4
0 0
0 1
0 0
0 1

result:

points 1.0

Test #7:

score: 13
Accepted
time: 0ms
memory: 3540kb

input:

3 3
1 2
0 1
0 2

output:

6
0 0 2
0 1 1
0 0 2
0 1 1
0 0 2
0 1 1

result:

points 1.0

Test #8:

score: 13
Accepted
time: 0ms
memory: 3820kb

input:

4 6
0 1
0 3
2 3
0 2
1 3
1 2

output:

8
0 0 3 3
0 1 2 1
0 0 3 3
0 1 2 1
0 0 3 3
0 1 2 1
0 0 3 3
0 1 2 1

result:

points 1.0

Test #9:

score: 13
Accepted
time: 0ms
memory: 3792kb

input:

10 45
4 9
2 8
5 9
1 2
2 9
4 5
5 7
6 7
1 3
1 9
3 4
0 3
4 7
0 6
5 6
7 9
4 8
6 8
0 5
1 8
3 9
1 6
6 9
4 6
0 8
2 3
0 4
0 9
0 7
3 6
0 2
2 5
3 7
3 5
7 8
5 8
8 9
0 1
2 7
1 7
1 4
2 6
2 4
3 8
1 5

output:

20
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8 9
0 3 2 3 4 5 6 5 2 4
0 1 1 0 8 9 7 7 8...

result:

points 1.0

Test #10:

score: 13
Accepted
time: 0ms
memory: 3536kb

input:

15 105
4 10
8 13
0 12
11 12
2 13
8 14
6 10
0 4
8 12
2 12
1 13
5 9
2 8
7 10
6 13
0 13
9 13
7 11
3 13
0 3
4 7
5 13
7 13
0 7
0 11
0 8
0 2
2 4
2 6
6 9
0 1
9 11
1 9
3 14
3 4
10 11
5 10
0 9
3 9
6 11
2 10
5 6
2 5
1 14
6 8
9 12
2 11
9 10
5 12
5 14
4 14
7 14
5 8
5 7
1 12
0 14
7 9
3 11
1 8
0 10
1 3
8 9
4 6
10...

output:

30
0 1 2 3 10 5 5 11 8 3 10 11 0 2 8
0 6 4 14 4 9 6 7 13 9 7 12 12 13 14
0 1 2 3 10 5 5 11 8 3 10 11 0 2 8
0 6 4 14 4 9 6 7 13 9 7 12 12 13 14
0 1 2 3 10 5 5 11 8 3 10 11 0 2 8
0 6 4 14 4 9 6 7 13 9 7 12 12 13 14
0 1 2 3 10 5 5 11 8 3 10 11 0 2 8
0 6 4 14 4 9 6 7 13 9 7 12 12 13 14
0 1 2 3 10 5 5 11...

result:

points 1.0

Test #11:

score: 13
Accepted
time: 0ms
memory: 3832kb

input:

30 435
5 6
8 11
3 26
8 29
10 22
6 20
18 22
23 27
13 18
2 26
21 25
11 15
25 28
2 22
18 20
3 13
10 19
6 29
10 15
0 13
7 22
13 28
9 16
2 28
6 16
3 17
6 14
4 8
16 17
9 22
22 24
26 29
14 28
19 29
28 29
4 28
13 23
12 19
1 2
5 10
1 6
2 4
25 27
4 22
9 26
16 23
5 16
6 11
0 17
16 27
0 7
15 26
2 16
8 12
1 25
3...

output:

60
0 2 2 26 7 5 23 7 29 9 10 11 24 0 20 11 17 17 18 10 20 5 18 23 24 25 26 9 25 29
0 1 28 3 4 6 6 14 8 16 22 8 12 13 14 15 16 3 13 19 1 21 22 27 4 21 15 27 28 19
0 2 2 26 7 5 23 7 29 9 10 11 24 0 20 11 17 17 18 10 20 5 18 23 24 25 26 9 25 29
0 1 28 3 4 6 6 14 8 16 22 8 12 13 14 15 16 3 13 19 1 21 22...

result:

points 1.0

Test #12:

score: 13
Accepted
time: 1ms
memory: 3624kb

input:

40 780
21 24
11 32
12 27
19 20
3 35
25 35
32 35
27 33
0 24
1 3
1 29
14 25
8 30
24 31
14 32
7 12
5 31
28 35
7 10
18 24
13 32
1 26
3 4
10 30
14 38
22 24
9 31
5 10
17 32
2 34
28 39
3 38
13 34
6 10
0 6
9 25
11 14
13 20
10 20
18 28
6 33
34 35
29 33
16 39
4 38
3 24
20 29
17 18
33 36
13 37
24 27
12 33
5 29...

output:

80
0 1 2 35 38 5 6 12 8 22 10 32 12 13 14 36 2 21 18 19 8 21 22 6 0 14 5 33 39 1 10 18 32 33 13 35 36 19 38 39
0 3 34 3 4 31 9 7 30 9 7 11 27 37 11 15 16 17 28 20 20 24 15 23 24 25 26 27 28 29 30 31 17 29 34 25 4 37 26 16
0 1 2 35 38 5 6 12 8 22 10 32 12 13 14 36 2 21 18 19 8 21 22 6 0 14 5 33 39 1 ...

result:

points 1.0

Test #13:

score: 13
Accepted
time: 1ms
memory: 3820kb

input:

50 1225
6 10
14 36
0 34
7 23
22 31
18 34
2 19
13 21
0 46
0 11
2 43
2 11
13 20
13 19
7 39
35 37
9 17
31 38
13 40
7 28
2 41
20 46
25 36
12 39
1 37
21 42
33 48
10 24
13 26
26 37
0 47
17 19
1 28
28 40
15 40
11 22
10 19
24 28
12 28
19 40
6 12
13 48
20 37
11 46
8 19
5 24
16 28
15 47
31 34
11 21
28 33
14 1...

output:

100
0 28 2 3 4 5 10 7 8 17 10 11 12 13 18 47 3 17 18 40 46 13 4 7 5 36 30 48 28 29 30 31 42 11 0 37 36 37 31 12 40 41 42 2 8 29 46 47 48 41
0 1 19 38 43 16 6 39 27 9 24 49 25 20 14 15 16 35 34 19 20 21 22 23 24 25 26 27 26 32 45 22 32 33 34 35 14 23 38 39 15 6 21 43 44 45 9 1 33 49
0 28 2 3 4 5 10 7...

result:

points 1.0

Test #14:

score: 13
Accepted
time: 2ms
memory: 3620kb

input:

100 4950
24 39
27 46
11 71
57 65
3 8
84 97
74 87
17 49
12 72
1 4
22 83
29 42
28 65
39 89
29 92
26 78
45 53
18 44
33 43
14 98
50 66
21 95
32 67
21 33
21 80
59 77
70 85
13 16
0 41
31 65
51 80
22 80
30 79
55 75
54 82
29 57
72 97
31 85
86 87
60 90
1 17
65 81
13 15
44 71
58 88
65 87
8 31
77 99
4 44
29 43...

output:

200
0 51 2 3 4 42 6 79 75 9 10 11 12 13 98 13 81 46 44 19 6 21 22 23 24 25 3 76 68 57 63 31 67 43 34 89 36 37 38 24 38 0 42 43 44 45 46 23 49 49 50 51 52 45 82 4 10 57 58 36 60 61 62 63 19 31 50 67 68 9 70 11 97 12 74 75 76 77 78 79 22 81 82 74 78 70 62 37 58 89 52 61 25 2 60 21 34 97 98 77
0 1 48 8...

result:

points 1.0

Subtask #3:

score: 11
Accepted

Test #15:

score: 11
Accepted
time: 0ms
memory: 3548kb

input:

2 1
0 1

output:

4
0 0
0 1
0 0
0 1

result:

points 1.0

Test #16:

score: 11
Accepted
time: 0ms
memory: 3532kb

input:

3 2
0 1
1 2

output:

6
0 0 2
0 1 1
0 0 2
0 1 1
0 0 2
0 1 1

result:

points 1.0

Test #17:

score: 11
Accepted
time: 0ms
memory: 3624kb

input:

4 3
0 1
1 2
2 3

output:

8
0 0 2 2
0 1 1 3
0 0 2 2
0 1 1 3
0 0 2 2
0 1 1 3
0 0 2 2
0 1 1 3

result:

points 1.0

Test #18:

score: 11
Accepted
time: 1ms
memory: 3528kb

input:

49 48
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 11
11 12
12 13
13 14
14 15
15 16
16 17
17 18
18 19
19 20
20 21
21 22
22 23
23 24
24 25
25 26
26 27
27 28
28 29
29 30
30 31
31 32
32 33
33 34
34 35
35 36
36 37
37 38
38 39
39 40
40 41
41 42
42 43
43 44
44 45
45 46
46 47
47 48

output:

98
0 0 2 2 4 4 6 6 8 8 10 10 12 12 14 14 16 16 18 18 20 20 22 22 24 24 26 26 28 28 30 30 32 32 34 34 36 36 38 38 40 40 42 42 44 44 46 46 48
0 1 1 3 3 5 5 7 7 9 9 11 11 13 13 15 15 17 17 19 19 21 21 23 23 25 25 27 27 29 29 31 31 33 33 35 35 37 37 39 39 41 41 43 43 45 45 47 47
0 0 2 2 4 4 6 6 8 8 10 1...

result:

points 1.0

Test #19:

score: 11
Accepted
time: 0ms
memory: 3628kb

input:

99 98
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 11
11 12
12 13
13 14
14 15
15 16
16 17
17 18
18 19
19 20
20 21
21 22
22 23
23 24
24 25
25 26
26 27
27 28
28 29
29 30
30 31
31 32
32 33
33 34
34 35
35 36
36 37
37 38
38 39
39 40
40 41
41 42
42 43
43 44
44 45
45 46
46 47
47 48
48 49
49 50
50 51
51 52
5...

output:

198
0 0 2 2 4 4 6 6 8 8 10 10 12 12 14 14 16 16 18 18 20 20 22 22 24 24 26 26 28 28 30 30 32 32 34 34 36 36 38 38 40 40 42 42 44 44 46 46 48 48 50 50 52 52 54 54 56 56 58 58 60 60 62 62 64 64 66 66 68 68 70 70 72 72 74 74 76 76 78 78 80 80 82 82 84 84 86 86 88 88 90 90 92 92 94 94 96 96 98
0 1 1 3 3...

result:

points 1.0

Test #20:

score: 11
Accepted
time: 1ms
memory: 3764kb

input:

100 99
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 11
11 12
12 13
13 14
14 15
15 16
16 17
17 18
18 19
19 20
20 21
21 22
22 23
23 24
24 25
25 26
26 27
27 28
28 29
29 30
30 31
31 32
32 33
33 34
34 35
35 36
36 37
37 38
38 39
39 40
40 41
41 42
42 43
43 44
44 45
45 46
46 47
47 48
48 49
49 50
50 51
51 52
...

output:

200
0 0 2 2 4 4 6 6 8 8 10 10 12 12 14 14 16 16 18 18 20 20 22 22 24 24 26 26 28 28 30 30 32 32 34 34 36 36 38 38 40 40 42 42 44 44 46 46 48 48 50 50 52 52 54 54 56 56 58 58 60 60 62 62 64 64 66 66 68 68 70 70 72 72 74 74 76 76 78 78 80 80 82 82 84 84 86 86 88 88 90 90 92 92 94 94 96 96 98 98
0 1 1 ...

result:

points 1.0

Test #21:

score: 11
Accepted
time: 1ms
memory: 3608kb

input:

64 63
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 11
11 12
12 13
13 14
14 15
15 16
16 17
17 18
18 19
19 20
20 21
21 22
22 23
23 24
24 25
25 26
26 27
27 28
28 29
29 30
30 31
31 32
32 33
33 34
34 35
35 36
36 37
37 38
38 39
39 40
40 41
41 42
42 43
43 44
44 45
45 46
46 47
47 48
48 49
49 50
50 51
51 52
5...

output:

128
0 0 2 2 4 4 6 6 8 8 10 10 12 12 14 14 16 16 18 18 20 20 22 22 24 24 26 26 28 28 30 30 32 32 34 34 36 36 38 38 40 40 42 42 44 44 46 46 48 48 50 50 52 52 54 54 56 56 58 58 60 60 62 62
0 1 1 3 3 5 5 7 7 9 9 11 11 13 13 15 15 17 17 19 19 21 21 23 23 25 25 27 27 29 29 31 31 33 33 35 35 37 37 39 39 41...

result:

points 1.0

Subtask #4:

score: 0
Skipped

Dependency #1:

0%

Subtask #5:

score: 0
Skipped

Dependency #1:

0%