QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#656492#5672. Connectivity Problemucup-team5226#AC ✓3ms3784kbC++20957b2024-10-19 13:12:062024-10-19 13:12:10

Judging History

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

  • [2024-10-19 13:12:10]
  • 评测
  • 测评结果:AC
  • 用时:3ms
  • 内存:3784kb
  • [2024-10-19 13:12:06]
  • 提交

answer

#include <bits/stdc++.h>
class UnionFind {
    std::vector<int> arr;

   public:
    UnionFind(int n) {
        arr.assign(n, -1);
    }
    int root(int a) {
        if (arr[a] < 0) return a;
        arr[a] = root(arr[a]);
        return arr[a];
    }
    bool merge(int u, int v) {
        u = root(u);
        v = root(v);
        if (u == v) return false;
        if (-arr[u] < arr[v]) {
            std::swap(u, v);
        }
        arr[u] += arr[v];
        arr[v] = u;
        return true;
    }
    bool same(int u, int v) {
        return root(u) == root(v);
    }
    int size(int u) {
        return -arr[root(u)];
    }
};

using namespace std;
int main() {
    int n;
    cin >> n;
    UnionFind uf(1000);
    while (n--) {
        int p, q;
        cin >> p >> q;
        if (uf.merge(p, q)) {
            cout << "N" << endl;
        } else {
            cout << "Y" << endl;
        }
    }
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3780kb

input:

12
3 4
4 9
8 1
2 3
5 6
2 9
5 9
7 3
4 8
5 6
1 8
6 1

output:

N
N
N
N
N
Y
N
N
N
Y
Y
Y

result:

ok 12 lines

Test #2:

score: 0
Accepted
time: 0ms
memory: 3556kb

input:

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

output:

N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
Y
Y
Y
N
N
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
N
N
N
Y
N
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y

result:

ok 100 lines

Test #3:

score: 0
Accepted
time: 1ms
memory: 3780kb

input:

200
29 19
6 28
16 17
9 11
20 25
18 41
9 17
4 3
12 24
4 30
22 2
10 39
1 20
10 23
10 11
10 0
29 37
12 22
7 46
4 1
6 28
6 39
23 10
3 11
11 22
14 31
14 24
8 39
7 45
28 20
3 2
0 6
28 19
27 42
7 10
18 10
12 11
27 14
11 23
15 23
9 11
4 28
22 33
6 15
1 15
12 32
12 47
25 2
13 29
8 30
27 2
23 22
16 38
13 9
10...

output:

N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
Y
N
N
N
N
N
N
Y
Y
Y
N
N
N
N
Y
N
Y
N
Y
Y
N
Y
Y
N
N
Y
N
Y
Y
Y
N
Y
Y
Y
N
Y
Y
N
Y
Y
Y
Y
Y
Y
N
Y
Y
N
Y
Y
Y
N
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
...

result:

ok 200 lines

Test #4:

score: 0
Accepted
time: 0ms
memory: 3508kb

input:

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

output:

N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
Y
N
N
N
Y
N
N
Y
Y
N
N
N
N
N
Y
Y
Y
Y
Y
Y
N
N
N
N
Y
Y
Y
Y
N
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
...

result:

ok 1000 lines

Test #5:

score: 0
Accepted
time: 0ms
memory: 3784kb

input:

3000
123 31
78 180
42 82
91 164
28 25
142 91
148 102
149 93
101 46
32 4
42 180
13 41
7 85
108 75
59 20
56 14
38 103
109 126
0 138
104 108
108 50
47 152
36 156
59 87
135 111
10 87
78 72
103 177
0 85
81 62
24 67
79 158
46 83
41 140
35 147
127 118
68 138
119 19
9 166
143 142
39 153
119 66
52 160
112 19...

output:

N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
Y
N
Y
N
N
N
N
N
N
N
N
N
Y
N
N
N
N
N
Y
N
N
Y
...

result:

ok 3000 lines

Test #6:

score: 0
Accepted
time: 0ms
memory: 3724kb

input:

5000
149 83
70 47
5 128
22 146
149 8
9 43
69 1
129 126
119 8
60 161
112 124
78 190
77 20
137 8
149 61
63 100
132 48
9 98
96 84
0 20
74 40
27 23
1 67
27 95
41 64
134 7
54 44
14 57
26 10
106 11
136 193
111 76
25 60
39 69
43 154
146 114
38 79
51 83
78 3
88 166
69 186
85 32
11 59
94 116
124 52
97 43
84 ...

output:

N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
Y
N
N
Y
N
N
N
N
N
N
Y
N
N
N
N
N
N
N
N
N
N
N
N
Y
N
N
Y
N
Y
N
N
Y
Y
N
N
N
Y
Y
...

result:

ok 5000 lines

Test #7:

score: 0
Accepted
time: 3ms
memory: 3464kb

input:

10000
510 915
206 189
588 690
871 253
802 171
200 257
875 77
699 781
440 52
653 286
648 388
343 442
302 425
344 481
898 14
497 76
417 93
787 381
401 151
491 951
248 76
192 712
616 21
554 708
51 543
671 27
432 275
430 318
230 989
405 990
419 249
143 62
247 349
455 202
614 947
672 608
39 445
413 445
3...

output:

N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
...

result:

ok 10000 lines