QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#185770#6634. Central Subsetucup-team870#AC ✓115ms28024kbC++171.7kb2023-09-22 16:23:322023-09-22 16:23:34

Judging History

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

  • [2023-09-22 16:23:34]
  • 评测
  • 测评结果:AC
  • 用时:115ms
  • 内存:28024kb
  • [2023-09-22 16:23:32]
  • 提交

answer

#include <bits/stdc++.h>
#define rep(i,l,r) for(int i=l; i<=r; i++)
#define IOS {cin.tie(0);cout.tie(0);ios::sync_with_stdio(0);}
using namespace std;
typedef long long ll;
typedef pair<int,int> P;
const int N=2e5+5;
int fa[N],dep[N];
vector<int>tu[N],ans[N];
int fd(int x){
    if(x==fa[x])return x;
    return fa[x]=fd(fa[x]);
}
void dfs(int now,int pre){
    // dep[now]=dep[pre]+1;
    for(int son:tu[now]){
        if(son==pre)continue;
        dep[son]=dep[now]+1;
        dfs(son,now);
    }
}
void slv(){
    int n,m;cin>>n>>m;
    ans[0].clear();
    rep(i,1,n){
        fa[i]=i; tu[i].clear(); ans[i].clear();
    }
    rep(i,1,m){
        int u,v;cin>>u>>v;
        int uu=fd(u),vv=fd(v);
        if(uu!=vv){
            fa[uu]=vv; tu[u].push_back(v); tu[v].push_back(u);
        }
    }
    dfs(1,0);
    int sn=sqrt(n);
    while(sn*sn<n)++sn;
    rep(i,1,n){
        ans[dep[i]%sn].push_back(i);
        // cout<<dep[i]<<' ';
    } 
    // cout<<endl;
    int ma=0;
    rep(i,0,sn-1){
        ma=max(ma,(int)ans[i].size());
    }
    if(ma==sn){
        cout<<ans[0].size()<<'\n';
        for(auto v:ans[0])cout<<v<<' '; cout<<'\n'; return;
    }
    rep(i,0,sn-1){
        // cout<<i<<" "<<ans[i].size()<<endl;
        // if(i==0)cout<<ans[i].size()<<"hh\n";
        if(ans[i].size() && ans[i].size()<sn){
            if(i)ans[i].push_back(1);
            cout<<ans[i].size()<<'\n';
            for(auto v:ans[i])cout<<v<<' '; cout<<'\n'; return;
        }
    }
    assert(0);
}
int main() {
    IOS
    int T;cin>>T;
    while(T--)slv();

    return 0;
}
/*
1 
5 4
1 2
2 3
3 4
4 5

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
*/

详细

Test #1:

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

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:

2
1 3 
2
1 6 

result:

ok correct (2 test cases)

Test #2:

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

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:

4
1 5 9 13 
3
1 5 6 
3
1 5 9 
1
1 
1
1 
3
1 4 7 
1
1 
3
1 5 11 
4
3 11 12 1 
1
1 
4
1 6 11 16 
3
1 4 5 
3
1 5 9 
3
1 9 10 
1
1 
4
1 5 9 13 
2
2 1 
1
1 
3
2 9 1 
1
1 
2
1 3 
3
1 4 7 
3
1 5 11 
3
1 11 12 
1
1 
4
1 5 9 13 
3
1 4 6 
4
2 6 13 1 
2
1 3 
1
1 
5
1 6 11 16 21 
3
3 4 1 
3
1 5 11 
4
2 10 11 1 ...

result:

ok correct (10000 test cases)

Test #3:

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

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:

45
1 46 91 136 181 226 271 316 361 406 451 496 541 586 631 676 721 766 811 856 901 946 991 1036 1081 1126 1171 1216 1261 1306 1351 1396 1441 1486 1531 1576 1621 1666 1711 1756 1801 1846 1891 1936 1981 
1
1 
45
12 57 102 147 192 237 282 327 372 417 462 507 552 597 642 687 732 777 822 867 912 957 1011...

result:

ok correct (100 test cases)

Test #4:

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

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:

122
1 124 247 370 493 616 739 862 985 1108 1231 1354 1477 1600 1723 1846 1969 2092 2215 2338 2461 2584 2707 2830 2953 3076 3199 3322 3445 3568 3691 3814 3937 4060 4183 4306 4429 4552 4675 4798 4921 5044 5167 5290 5413 5536 5659 5782 5905 6028 6151 6274 6397 6520 6643 6766 6889 7012 7135 7258 7381 75...

result:

ok correct (10 test cases)

Test #5:

score: 0
Accepted
time: 31ms
memory: 14652kb

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:

140
5 6 7 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 18585 18586 18587 18588 18589 18590 18591 18592 18593 18594 18595 1859...

result:

ok correct (10 test cases)

Test #6:

score: 0
Accepted
time: 48ms
memory: 28024kb

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:

447
1 449 897 1345 1793 2241 2689 3137 3585 4033 4481 4929 5377 5825 6273 6721 7169 7617 8065 8513 8961 9409 9857 10305 10753 11201 11649 12097 12545 12993 13441 13889 14337 14785 15233 15681 16129 16577 17025 17473 17921 18369 18817 19265 19713 20161 20609 21057 21505 21953 22401 22849 23297 23745 ...

result:

ok correct (1 test case)

Test #7:

score: 0
Accepted
time: 53ms
memory: 24764kb

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:

447
1 449 897 1345 1793 2241 2689 3137 3585 4033 4481 4929 5377 5825 6273 6721 7169 7617 8065 8513 8961 9409 9857 10305 10753 11201 11649 12097 12545 12993 13441 13889 14337 14785 15233 15681 16129 16577 17025 17473 17921 18369 18817 19265 19713 20161 20609 21057 21505 21953 22401 22849 23297 23745 ...

result:

ok correct (1 test case)

Test #8:

score: 0
Accepted
time: 55ms
memory: 21900kb

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:

426
1 86464 86465 86466 86467 86468 86469 86470 86471 86472 86473 86474 86475 86476 86477 86478 86479 86480 86481 86482 86483 86484 86485 86486 86487 86488 86489 86490 86491 86492 86493 86494 86495 86496 86497 86498 86499 86500 86501 86502 86503 86504 86505 86506 86507 86508 86509 86510 86511 86512 ...

result:

ok correct (1 test case)

Test #9:

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

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:

4
1 2 5 8 
9
3 7 16 22 25 27 34 55 1 
6
1 2 7 19 20 24 
2
1 22 
7
1 2 12 17 32 37 46 
2
1 5 
5
1 2 29 37 38 
5
1 18 31 50 52 
4
1 14 21 35 
8
17 31 48 54 58 62 68 1 
5
3 8 18 20 1 
10
5 17 32 45 51 68 77 80 91 1 
2
2 1 
6
6 7 14 15 26 1 
6
1 14 19 26 45 50 
3
1 5 15 
3
1 5 13 
2
3 1 
7
1 28 38 40 52...

result:

ok correct (1000 test cases)

Test #10:

score: 0
Accepted
time: 4ms
memory: 12976kb

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:

6
13 15 17 20 48 1 
8
1 9 31 40 55 73 76 81 
6
1 27 30 32 33 50 
5
1 3 17 27 62 
6
15 42 47 67 71 1 
6
4 12 26 31 38 1 
5
1 3 27 41 44 
5
1 28 29 31 34 
7
1 33 38 45 48 53 66 
4
1 3 53 55 
4
14 21 69 1 
8
12 35 60 78 79 80 91 1 
6
1 13 34 64 75 85 
6
1 9 19 48 59 95 
9
1 19 24 25 42 53 54 86 90 
4
1...

result:

ok correct (100 test cases)

Test #11:

score: 0
Accepted
time: 115ms
memory: 17400kb

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
1 

result:

ok correct (1 test case)

Test #12:

score: 0
Accepted
time: 66ms
memory: 26080kb

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
1 1040 1101 2286 2711 3444 3648 4852 5157 5845 5918 6394 7261 7558 7730 8531 9242 9551 10143 10634 10869 11174 11929 12417 12544 12786 13220 13850 13856 16882 16952 17269 17579 17907 18138 18476 18547 18605 18670 18899 18992 20164 21202 21581 22765 23194 23626 23773 24280 24549 24638 24679 24690...

result:

ok correct (1 test case)

Test #13:

score: 0
Accepted
time: 50ms
memory: 21572kb

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
1 1332 1602 2106 2199 2375 2428 3105 3166 3433 3709 4919 4967 5203 5770 6948 7326 7556 7775 7967 8632 9059 9218 9377 9706 10103 10150 10581 10773 10927 10990 11370 11819 12282 12889 13303 13612 14442 14706 18152 19202 20124 20173 21749 24651 24741 25776 25797 26013 26058 26607 26720 26735 26961 ...

result:

ok correct (1 test case)

Test #14:

score: 0
Accepted
time: 27ms
memory: 13752kb

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
1 839 853 865 871 872 873 875 876 877 878 879 882 885 889 890 894 895 897 898 899 900 910 911 912 913 920 921 925 926 
29
158 162 172 175 177 183 186 188 189 190 192 193 195 196 197 198 199 200 201 202 204 205 207 208 209 211 212 215 1 
30
1 772 778 779 780 781 782 790 792 796 801 802 803 809 810...

result:

ok correct (200 test cases)

Test #15:

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

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
268 1068 1 

result:

ok correct (1 test case)

Test #16:

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

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
15 49 78 113 178 207 212 220 245 267 413 445 447 456 469 492 499 564 585 614 630 637 653 692 703 841 842 847 1 

result:

ok correct (1 test case)

Test #17:

score: 0
Accepted
time: 12ms
memory: 13468kb

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
1 4 29 
5
4 23 25 30 1 
4
2 22 47 1 
3
1 2 38 
5
6 13 24 30 1 
4
22 37 40 1 
2
1 6 
4
17 42 49 1 
3
1 5 24 
3
5 49 1 
3
1 11 26 
4
14 35 38 1 
3
1 40 45 
4
21 39 44 1 
4
16 38 45 1 
4
10 26 47 1 
3
1 7 33 
3
1 4 21 
3
1 7 8 
5
3 8 21 42 1 
3
1 36 45 
5
26 34 39 42 1 
3
1 4 21 
3
1 3 5 
3
1 11 14 
...

result:

ok correct (4081 test cases)