QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#422062#6634. Central Subsetliuzhenhao09#AC ✓145ms27228kbC++201.0kb2024-05-26 17:57:142024-05-26 17:57:14

Judging History

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

  • [2024-05-26 17:57:14]
  • 评测
  • 测评结果:AC
  • 用时:145ms
  • 内存:27228kb
  • [2024-05-26 17:57:14]
  • 提交

answer

#include<bits/stdc++.h>
#define int long long
using namespace std;
int T,n,m,B;
vector<int>to[200010];
int fa[200010];
vector<int>ans;
int Find(int i){
	return fa[i] == i ? i : fa[i] = Find(fa[i]);
}
void Unite(int u,int v){
	u = Find(u),v = Find(v);
	if(u == v) return;
	fa[u] = v;
}
void dfs(int u,int fa,int tmp){
	if(tmp == B + 1) ans.push_back(u),tmp = 0;
	for(auto v : to[u]){
		if(v == fa) continue;
		dfs(v,u,tmp + 1);
	}
}
mt19937 rnd(time(0));
signed main(){
	scanf("%lld",&T);
	while(T--){
		scanf("%lld %lld",&n,&m);
		for(int i = 1; i <= n; i++) to[i].clear(),fa[i] = i;
		for(int i = 1,u,v; i <= m; i++){
			scanf("%lld %lld",&u,&v);
			if(Find(u) != Find(v)) to[u].push_back(v),to[v].push_back(u),Unite(u,v);
		}
		B = ceil(sqrt(n));
		while(1){
			ans.clear();
			int rt = rnd() % n + 1;
			dfs(rt,0,B + 1);
			if((int)(ans.size()) <= B){
				printf("%lld\n",(int)(ans.size()));
				for(auto v : ans) printf("%lld ",v);
				printf("\n");
				break;
			} 
		}
	}
	return 0;
} 

詳細信息

Test #1:

score: 100
Accepted
time: 1ms
memory: 3980kb

input:

2
4 3
1 2
2 3
3 4
6 7
1 2
2 3
3 1
1 4
4 5
5 6
6 4

output:

1
3 
1
1 

result:

ok correct (2 test cases)

Test #2:

score: 0
Accepted
time: 15ms
memory: 3980kb

input:

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

output:

3
4 9 14 
1
1 
1
4 
1
1 
1
1 
2
6 2 
1
2 
3
11 8 14 
3
5 13 14 
1
11 
3
11 17 5 
2
7 1 
1
3 
3
4 15 14 
1
3 
3
7 12 2 
2
7 6 
1
2 
1
4 
1
12 
1
3 
2
5 6 
3
12 9 1 
4
2 17 15 16 
1
6 
3
8 13 3 
2
4 6 
3
3 15 8 
1
3 
1
2 
3
6 12 18 
3
10 13 9 
3
12 1 9 
3
1 11 10 
1
6 
2
2 6 
3
6 7 1 
1
5 
3
7 17 16 
...

result:

ok correct (10000 test cases)

Test #3:

score: 0
Accepted
time: 25ms
memory: 4320kb

input:

100
2000 1999
529 528
885 884
1221 1222
375 374
245 244
758 757
711 710
1521 1522
1875 1874
749 750
823 822
1959 1958
1767 1766
155 154
631 632
825 824
1330 1331
457 456
1344 1343
1817 1818
413 414
582 583
1828 1827
1335 1336
654 655
162 161
1668 1667
1966 1967
1472 1471
1185 1184
518 517
1509 1510
...

output:

43
439 393 347 301 255 209 163 117 71 25 485 531 577 623 669 715 761 807 853 899 945 991 1037 1083 1129 1175 1221 1267 1313 1359 1405 1451 1497 1543 1589 1635 1681 1727 1773 1819 1865 1911 1957 
1
307 
41
864 910 1955 956 1909 1819 818 1773 772 1727 726 1681 680 1635 634 1589 588 1543 542 496 450 14...

result:

ok correct (100 test cases)

Test #4:

score: 0
Accepted
time: 25ms
memory: 6728kb

input:

10
14914 14913
13959 13958
3643 3642
4582 4581
13378 13379
981 980
12901 12902
12355 12356
14692 14691
9670 9669
14632 14631
1441 1440
1367 1368
6237 6238
8297 8298
1021 1020
5096 5097
4773 4774
7778 7779
3013 3014
5536 5535
11621 11620
13904 13903
3050 3049
14179 14178
7471 7472
13380 13381
7403 74...

output:

120
13235 13111 12987 12863 12739 12615 12491 12367 12243 12119 11995 11871 11747 11623 11499 11375 11251 11127 11003 10879 10755 10631 10507 10383 10259 10135 10011 9887 9763 9639 9515 9391 9267 9143 9019 8895 8771 8647 8523 8399 8275 8151 8027 7903 7779 7655 7531 7407 7283 7159 7035 6911 6787 6663...

result:

ok correct (10 test cases)

Test #5:

score: 0
Accepted
time: 39ms
memory: 5924kb

input:

10
20000 19999
6831 6760
15763 15900
10362 10184
5821 5880
17555 17389
16708 16574
11592 11436
186 209
19380 19313
8867 8718
12100 12237
16245 16110
18464 18568
4713 4665
17412 17578
18666 18750
4360 4322
12350 12502
4054 4103
2874 2849
8097 8202
14489 14639
1056 1016
13500 13581
2435 2391
199 173
8...

output:

76
864 3577 3579 3578 3576 3575 3567 3569 3568 3574 3573 3572 3571 3570 3566 3565 5538 5545 5543 5544 5542 5540 5541 5539 5537 5536 5551 5550 5549 5548 5547 5546 5563 5564 5565 5562 5561 5566 5571 5570 5572 5569 5567 5568 5573 5578 5574 5575 5577 5576 5579 5580 5585 5582 5584 5583 5586 5581 5557 555...

result:

ok correct (10 test cases)

Test #6:

score: 0
Accepted
time: 65ms
memory: 27228kb

input:

1
200000 199999
136649 136648
44943 44944
7148 7149
50332 50333
149967 149966
28976 28975
78549 78550
178698 178697
96434 96433
7859 7858
88976 88977
23348 23347
161682 161681
125393 125392
67892 67893
73592 73593
179054 179055
110841 110842
163714 163715
7982 7981
56309 56310
196486 196485
19176 19...

output:

446
138439 138888 139337 139786 140235 140684 141133 141582 142031 142480 142929 143378 143827 144276 144725 145174 145623 146072 146521 146970 147419 147868 148317 148766 149215 149664 150113 150562 151011 151460 151909 152358 152807 153256 153705 154154 154603 155052 155501 155950 156399 156848 15...

result:

ok correct (1 test case)

Test #7:

score: 0
Accepted
time: 72ms
memory: 23572kb

input:

1
200000 199999
58280 58281
132016 32016
45157 45158
35446 35445
158979 58979
185831 85831
74289 174289
195645 95645
31857 131857
168766 68766
95607 95606
39817 39818
58215 158215
74893 74894
18897 118897
63013 163013
58501 58502
94475 194475
77574 77573
152977 52977
3731 103731
20407 20408
186570 8...

output:

445
138439 138886 38887 139335 39336 39785 140233 40234 140682 40683 41132 41581 142029 42030 42479 42928 43377 143825 43826 44275 44724 145172 45173 145621 45622 146070 46071 146519 46520 46969 147417 47418 147866 47867 148315 48316 48765 49214 149662 49663 150111 50112 150560 50561 51010 51459 151...

result:

ok correct (1 test case)

Test #8:

score: 0
Accepted
time: 65ms
memory: 17692kb

input:

1
200000 199999
84088 84001
74829 74679
40726 41179
113019 113238
112813 113025
77336 77177
60908 61208
4521 4639
144249 144094
102763 102692
112856 113070
2428 2356
114005 113754
168454 168270
114538 114311
36802 36341
170182 170306
31641 32012
92503 92395
143570 143702
6871 6715
51503 51997
140883...

output:

315
166269 115701 115698 115700 115699 105774 105775 105777 105776 105778 105781 105780 105779 105782 105787 105790 105789 105788 105786 105783 105784 105785 104654 104653 104652 104651 104655 104656 103134 103135 103043 91617 91616 91615 91614 91613 77155 77157 77156 77158 77170 77167 77169 77168 7...

result:

ok correct (1 test case)

Test #9:

score: 0
Accepted
time: 8ms
memory: 4032kb

input:

1000
11 19
8 11
4 11
2 11
2 3
8 3
6 1
6 4
11 5
5 3
10 8
7 10
4 7
3 9
5 1
5 7
3 6
10 1
11 7
2 9
70 109
32 69
26 15
65 46
70 62
50 23
17 16
15 31
2 23
18 11
48 57
19 29
52 42
26 31
7 1
53 66
5 69
58 20
59 38
3 4
9 53
7 56
52 66
66 28
22 51
2 6
22 35
5 28
25 51
27 13
26 56
10 50
53 56
60 48
67 33
61 23...

output:

1
8 
4
61 17 13 12 
4
15 12 9 3 
9
42 28 77 76 78 82 39 50 49 
2
52 27 
2
3 1 
1
32 
3
55 33 22 
8
68 87 83 55 82 81 42 8 
3
46 72 38 
2
18 17 
7
45 74 46 40 55 25 13 
1
1 
5
41 26 17 25 46 
4
11 33 25 36 
3
17 16 15 
3
4 5 13 
1
4 
7
19 62 57 7 66 63 2 
4
37 62 57 14 
3
18 22 13 
3
33 34 18 
5
5 35...

result:

ok correct (1000 test cases)

Test #10:

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

input:

100
76 104
30 11
26 40
4 59
35 21
13 44
3 73
25 39
33 35
63 9
9 19
42 47
22 32
44 35
74 68
53 12
50 41
53 52
69 40
31 49
21 14
23 21
11 48
53 67
48 74
15 24
73 47
6 62
17 33
67 48
7 22
68 46
41 39
20 1
9 71
15 67
65 56
38 68
30 9
54 26
8 47
62 56
14 61
59 20
46 64
75 46
50 49
26 25
10 70
36 27
14 29...

output:

7
5 61 29 63 72 2 70 
3
75 65 90 
6
29 24 6 51 43 26 
6
55 51 24 61 4 40 
3
51 71 42 
3
32 42 23 
5
25 15 16 13 46 
2
16 24 
9
45 60 32 80 43 44 15 68 85 
6
21 16 1 14 44 37 
6
76 69 14 36 13 31 
7
68 87 18 7 86 46 34 
5
60 44 16 31 59 
8
57 15 82 21 45 36 74 69 
10
60 77 17 12 22 9 2 55 61 76 
7
45...

result:

ok correct (100 test cases)

Test #11:

score: 0
Accepted
time: 145ms
memory: 10764kb

input:

1
100000 1000000
70376 68374
69858 95507
48028 59467
27775 34161
858 86059
31468 25048
21313 82671
10952 18093
89665 50624
52742 11128
33566 41507
25913 22268
72131 67543
31387 42274
37347 75248
88261 56182
98982 47735
90574 62875
51228 53905
25218 4567
78201 22017
59613 68982
37239 43727
67620 9064...

output:

1
66269 

result:

ok correct (1 test case)

Test #12:

score: 0
Accepted
time: 92ms
memory: 26672kb

input:

1
200000 200000
89381 101645
141954 180063
180085 158544
12185 82120
161570 175869
36911 151360
49966 148400
135100 143084
145185 33970
82150 111213
93727 145916
42620 157053
26848 66273
178649 76101
5033 162413
173225 34259
30781 78979
9908 187256
87177 127185
7086 26040
178611 119947
198142 154140...

output:

446
63832 35303 127686 197310 18410 147237 191069 149907 55023 82305 31449 85001 28917 77918 52869 90399 22230 84589 110812 172547 29364 179848 25043 66266 130936 100411 99264 100366 173896 106165 198225 21765 86353 84072 180881 88735 120488 124092 11890 85783 101536 2363 51916 111853 128343 159877 ...

result:

ok correct (1 test case)

Test #13:

score: 0
Accepted
time: 80ms
memory: 16512kb

input:

1
199809 199808
197381 136472
136472 160228
160228 128766
128766 197225
197225 160133
160133 105707
105707 66465
66465 199512
199512 185463
185463 176514
176514 175293
175293 178768
178768 158873
158873 199518
199518 161400
161400 172476
172476 188761
188761 197795
197795 152286
152286 177332
177332...

output:

446
131782 122445 176944 168582 163318 129610 82025 179003 189686 191958 169257 145298 157503 149018 191514 197036 93911 137941 193846 192771 190745 172512 180436 192512 140068 194762 148139 172802 178918 177964 152426 176780 138264 194781 198750 186327 198034 164694 100148 157178 187262 183047 1143...

result:

ok correct (1 test case)

Test #14:

score: 0
Accepted
time: 37ms
memory: 4132kb

input:

200
961 1663
2 1
3 1
3 20
4 1
4 7
5 1
5 41
5 60
6 1
7 1
7 49
8 1
9 1
10 1
11 1
12 1
12 32
13 1
13 59
14 1
14 3
15 1
15 12
15 52
16 1
16 12
16 63
17 1
17 10
18 1
18 36
19 1
19 26
19 29
20 1
20 60
20 63
21 1
22 1
23 1
23 3
23 27
23 39
24 1
25 1
26 1
26 58
26 60
27 1
27 22
27 36
28 1
29 1
30 1
31 1
31 ...

output:

30
4 911 920 913 890 876 878 900 894 899 839 910 912 885 872 879 853 875 873 898 897 889 921 925 926 882 865 871 877 895 
15
465 488 495 515 517 468 493 478 483 467 453 490 640 639 637 
21
859 1 823 833 830 820 808 848 856 845 840 863 885 902 892 908 901 512 525 529 545 
29
15 780 786 791 811 836 81...

result:

ok correct (200 test cases)

Test #15:

score: 0
Accepted
time: 30ms
memory: 14100kb

input:

1
160000 159999
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
5...

output:

3
63832 281 1081 

result:

ok correct (1 test case)

Test #16:

score: 0
Accepted
time: 42ms
memory: 4144kb

input:

1
1000 499500
605 964
559 738
492 518
943 284
96 23
214 486
487 262
347 436
394 422
270 113
984 149
134 203
881 328
316 643
610 922
802 67
903 194
600 584
629 62
692 370
420 442
600 563
438 452
556 785
112 809
555 241
937 635
178 746
67 900
777 247
490 842
971 12
315 60
703 467
201 13
872 503
24 201...

output:

29
832 932 312 418 962 156 265 490 257 659 680 119 974 146 507 426 544 22 371 270 510 651 898 459 384 696 467 65 998 

result:

ok correct (1 test case)

Test #17:

score: 0
Accepted
time: 21ms
memory: 4016kb

input:

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

output:

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

result:

ok correct (4081 test cases)