QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#174417#6634. Central SubsetKlaus26#WA 484ms24932kbC++201.8kb2023-09-10 07:21:142023-09-10 07:21:14

Judging History

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

  • [2023-09-10 07:21:14]
  • 评测
  • 测评结果:WA
  • 用时:484ms
  • 内存:24932kb
  • [2023-09-10 07:21:14]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

#ifdef LOCAL
#include "../debug.h"
#define debug(...) cerr << "[" << #__VA_ARGS__ << "]:", debug_out(__VA_ARGS__)
#else
#define debug(...) 42
#endif



const int N = 2e5+10;

vector<int> g[N];
int vis[N];
int dis[N];
int cnt[N];
int test;

int n, m, lim;

void cl(){
	test = 0;
	for(int i=1; i<=n; i++){
		g[i].clear();
		vis[i] = 0;
		cnt[i] = 0;
	}
}
void bfs(int root){
	test++;
	queue<int> q;
	q.push(root);
	dis[root] = 0;
	vis[root] = test;
	while(q.size()){
		int u = q.front();
		cnt[u]++;
		q.pop();
		for(auto& v : g[u]){
			if(vis[v] == test)continue;
			vis[v] = test;
			dis[v] = dis[u] + 1;
			if(dis[v] == lim)continue;
			q.push(v);
		}
	}
}
int main(){
	ios_base::sync_with_stdio(0); cin.tie(0);
	int T;
	cin>>T;
	while(T--){
		cin>>n>>m;
		lim = sqrt(n);
		while(true){
			if(lim * lim >= n )break;
			lim++;
		}
		debug(lim);
		for(int i=0; i<m; i++){
			int u, v;
			cin>>u>>v;
			g[u].push_back(v);
			g[v].push_back(u);
		}
		vector<int> v(n);
		iota(v.begin(),v.end(),1);
		sort(v.begin(),v.end(),[&](int i, int j){
				return g[i].size() < g[j].size();
		});
		reverse(v.begin(),v.end());
		vector<int> ans;
		for(int i=1; i<=n; i++){
			int node = v[i-1];
			if(vis[node])continue;
			bfs(node);
		}
		sort(v.begin(),v.end(),[&](int i, int j){
				return cnt[i] < cnt[j];
				});
		reverse(v.begin(),v.end());
		test = 0;
		for(int i=1; i<=n; i++){
			vis[i] = 0;
		}
		for(int i=1; i<=n; i++){
			int node = v[i-1];
			if(vis[node])continue;
			ans.push_back(node);
			bfs(node);
		}
		if(ans.size() > lim){
			cout<<-1<<'\n';
			cl();
			continue;
		}
		cout<<ans.size()<<'\n';
		for(auto& i : ans) cout<<i<<' ';
		cout<<'\n';
		cl();
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

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
4 1 
1
2 

result:

ok correct (2 test cases)

Test #2:

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

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
6 11 1 
1
1 
2
6 1 
1
1 
1
1 
2
6 2 
1
1 
1
4 
2
14 5 
1
1 
3
4 11 18 
2
5 8 
2
6 1 
2
3 16 
1
1 
3
6 11 1 
1
1 
1
1 
2
1 9 
1
3 
2
4 1 
2
1 6 
1
4 
2
14 12 
1
1 
3
6 11 1 
1
1 
1
5 
1
1 
1
1 
3
4 11 18 
3
1 11 9 
1
4 
3
10 1 13 
1
1 
1
3 
3
1 6 7 
1
3 
3
15 14 2 
1
1 
2
3 8 
1
1 
2
7 9 
2
4 1 
1
...

result:

ok correct (10000 test cases)

Test #3:

score: 0
Accepted
time: 32ms
memory: 10272kb

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:

33
1982 937 986 500 1936 1888 439 1576 1749 1811 876 243 750 183 1628 815 1686 308 132 375 1514 1368 679 1313 1066 1437 58 556 1250 626 1187 1139 3 
1
714 
17
460 1938 876 802 390 752 202 302 1579 251 126 1688 1640 1516 1072 5 983 
8
94 1773 1288 1703 1106 1996 912 1098 
1
4 
33
1982 937 986 500 193...

result:

ok correct (100 test cases)

Test #4:

score: 0
Accepted
time: 33ms
memory: 10072kb

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:

86
7229 13776 9242 13951 1516 7414 13170 11585 13591 2580 6730 2764 13462 7089 13326 2218 4312 8593 438 1137 1963 6871 12315 12520 9116 2087 8737 1715 6178 1281 11878 1839 5812 11744 6319 5682 14417 2447 11389 6494 12092 14833 14553 14680 6001 14182 10922 5412 776 12660 10792 2995 5539 12976 9564 90...

result:

ok correct (10 test cases)

Test #5:

score: 0
Accepted
time: 51ms
memory: 10584kb

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:

4
7739 3384 1150 13000 
5
2621 10487 10774 14539 14195 
5
11722 3275 16322 10683 19983 
7
9245 17715 1534 9223 19992 14479 19784 
7
1626 12518 15511 18403 11304 12652 7067 
6
1989 18167 16582 15155 14688 16259 
7
8900 17197 1068 8782 12325 14999 10379 
5
6192 2677 17229 12331 6774 
8
249 14286 11005...

result:

ok correct (10 test cases)

Test #6:

score: 0
Accepted
time: 59ms
memory: 17156kb

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:

331
193335 98769 24333 39283 191234 14248 99218 192382 192867 99784 158232 39803 95226 191748 94667 94009 190463 189982 98073 189329 40502 23021 38209 197994 188620 97588 188157 14784 48201 95728 160679 15509 79264 161944 162401 160010 47539 153058 151828 152344 78796 150695 49479 13196 156951 15881...

result:

ok correct (1 test case)

Test #7:

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

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:

167
13976 159230 98841 14668 158770 42370 94790 42969 156672 158227 99745 157127 157662 161661 95242 192390 193476 192970 43673 97528 188622 98180 191801 191284 99294 37820 150170 79296 150749 151230 152484 153003 96058 38839 38282 154956 155470 155959 94141 160081 161134 162355 151954 160625 96790 ...

result:

ok correct (1 test case)

Test #8:

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

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:

5
97209 176091 27435 160440 161245 

result:

ok correct (1 test case)

Test #9:

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

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
9 
1
13 
1
12 
1
47 
1
23 
2
6 12 
1
5 
1
14 
1
19 
1
70 
1
16 
2
36 1 
1
1 
1
5 
1
23 
1
16 
1
4 
1
2 
1
15 
1
52 
1
30 
1
33 
1
22 
1
34 
1
24 
1
33 
1
6 
3
87 5 45 
1
45 
1
28 
1
17 
1
40 
2
3 2 
1
47 
1
30 
1
6 
2
40 9 
1
42 
1
34 
1
35 
2
8 33 
1
14 
1
35 
5
84 8 57 22 2 
1
100 
1
1 
1
39 
1
...

result:

ok correct (1000 test cases)

Test #10:

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

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:

1
27 
1
60 
1
13 
1
64 
1
47 
1
17 
3
14 13 37 
1
5 
1
80 
1
12 
1
48 
1
79 
1
23 
1
7 
1
20 
1
86 
1
14 
1
33 
1
86 
1
31 
1
12 
1
11 
1
52 
1
27 
1
17 
1
54 
2
3 29 
1
43 
1
13 
1
52 
3
49 32 35 
1
10 
1
7 
1
57 
3
51 50 31 
1
21 
1
59 
1
17 
1
5 
2
24 22 
1
59 
1
15 
1
24 
1
21 
1
51 
1
7 
3
11 1...

result:

ok correct (100 test cases)

Test #11:

score: 0
Accepted
time: 231ms
memory: 24932kb

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
41319 

result:

ok correct (1 test case)

Test #12:

score: 0
Accepted
time: 71ms
memory: 17224kb

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:

315
161938 161937 161936 78068 78070 78071 161929 161928 78073 78076 161923 161922 187413 78029 161918 161916 78031 161959 78035 161957 161956 78038 161939 161951 161921 161981 161979 161977 77801 161973 161972 161970 161968 77804 161965 78052 162007 78055 162003 78057 78058 161997 161996 78062 1619...

result:

ok correct (1 test case)

Test #13:

score: 0
Accepted
time: 387ms
memory: 17160kb

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
752 753 754 757 758 759 624 613 617 620 621 622 623 780 781 783 737 738 751 744 746 747 749 750 609 674 667 668 670 671 672 660 675 627 629 630 631 633 634 588 592 636 600 601 461 462 464 776 721 710 713 484 485 486 453 456 445 448 450 451 703 705 706 765 769 772 775 727 732 734 735 687 690 694 ...

result:

ok correct (1 test case)

Test #14:

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

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:

1
492 
1
742 
1
227 
1
477 
1
148 
1
50 
1
238 
2
918 58 
1
790 
1
506 
1
106 
1
728 
2
918 68 
1
492 
1
357 
1
302 
1
497 
1
191 
1
378 
1
545 
1
71 
1
828 
1
400 
1
524 
1
817 
1
109 
1
743 
5
173 896 909 912 822 
1
340 
1
827 
1
567 
1
711 
1
545 
1
466 
1
782 
1
479 
1
890 
1
828 
1
215 
1
177 
...

result:

ok correct (200 test cases)

Test #15:

score: -100
Wrong Answer
time: 484ms
memory: 15604kb

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:

-1

result:

wrong answer Integer -1 violates the range [1, 400] (test case 1)