QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#134992 | #6634. Central Subset | PlentyOfPenalty# | AC ✓ | 1512ms | 23856kb | C++20 | 1.4kb | 2023-08-05 10:32:06 | 2023-08-05 10:32:11 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
const int N=2e5;
struct edge{
int t,nxt;
}e[(N<<1)+10];
int T,n,D,m,u,v,f[N+10],be[N+10],cnt;
int fa[N+10],dep[N+10],mk[N+10],mx,mnd[N+10],prt[N+10],sz;
char c;
int getf(int x){
return f[x]==x?x:f[x]=getf(f[x]);
}
void scan(int&x){
x=0;
while(!isdigit(c=getchar()));
while(isdigit(c))x=(x<<3)+(x<<1)+c-'0',c=getchar();
}
void add(int x,int y){
e[++cnt]=(edge){y,be[x]},be[x]=cnt;
}
void Getdep(int x,int y){
fa[x]=y,dep[x]=dep[y]+1;
for(int i=be[x];i;i=e[i].nxt)if(e[i].t!=y)Getdep(e[i].t,x);
}
void Getmx(int x,int mn){
if(mk[x])return;
if(mn>D&&mnd[x]>D&&dep[x]>mx)mx=dep[x],u=x;
for(int i=be[x];i;i=e[i].nxt)if(e[i].t!=fa[x])Getmx(e[i].t,min(mn,mnd[x])+1);
}
int main(){
ios::sync_with_stdio(0),cin.tie(0);
cin>>T;
while(T--){
cin>>n>>m;
D=0;
while(D*D<n)++D;
for(int i=1;i<=n;++i)f[i]=i,be[i]=mk[i]=0,mnd[i]=D+1;
cnt=sz=0;
for(int i=1;i<=m;++i){
cin>>u>>v;
//u=i,v=i+1;
if(getf(u)!=getf(v))add(u,v),add(v,u),f[f[u]]=f[v];
}
Getdep(1,0);
while(mx=0,Getmx(1,D+1),mx&&sz<=D){
for(int i=1;i<=D&&fa[u];++i)u=fa[u];
prt[++sz]=u,mk[u]=1,mnd[u]=0;
for(int i=1;i<=D&&fa[u];++i)u=fa[u],mnd[u]=min(mnd[u],i);
}
// assert(sz<=D);
cout<<sz<<'\n';
for(int i=1;i<=sz;++i){
// printf("%d%c",prt[i]," \n"[i==sz]);
cout<<prt[i]<<" \n"[i==sz];
}
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 2ms
memory: 9680kb
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 2 1 1
result:
ok correct (2 test cases)
Test #2:
score: 0
Accepted
time: 12ms
memory: 9644kb
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:
2 11 2 1 1 1 2 1 1 1 1 2 6 1 1 1 1 4 2 10 1 1 1 2 15 4 1 3 1 2 1 5 1 1 2 11 2 1 1 1 1 1 2 1 1 1 2 1 3 1 4 1 5 1 1 2 11 2 1 1 1 5 1 1 1 1 2 16 5 1 2 1 4 2 7 1 1 1 1 3 1 2 1 3 2 6 7 1 1 2 8 1 1 1 1 3 1 2 1 1 2 6 1 1 3 1 3 1 5 1 1 2 13 2 1 1 1 3 1 4 1 1 2 12 3 1 2 1 2 1 1 1 1 1 2 1 2 1 2 1 2 1 1 2 5 1 ...
result:
ok correct (10000 test cases)
Test #3:
score: 0
Accepted
time: 27ms
memory: 7720kb
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:
22 1955 1864 1773 1682 1591 1500 1409 1318 1227 1136 1045 954 863 772 681 590 499 408 317 226 135 44 1 1 12 956 867 778 689 600 511 422 333 244 155 66 1 4 1170 1047 107 32 1 1 22 1955 1864 1773 1682 1591 1500 1409 1318 1227 1136 1045 954 863 772 681 590 499 408 317 226 135 44 1 1 12 956 867 778 689 ...
result:
ok correct (100 test cases)
Test #4:
score: 0
Accepted
time: 118ms
memory: 10928kb
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:
61 14791 14544 14297 14050 13803 13556 13309 13062 12815 12568 12321 12074 11827 11580 11333 11086 10839 10592 10345 10098 9851 9604 9357 9110 8863 8616 8369 8122 7875 7628 7381 7134 6887 6640 6393 6146 5899 5652 5405 5158 4911 4664 4417 4170 3923 3676 3429 3182 2935 2688 2441 2194 1947 1700 1453 12...
result:
ok correct (10 test cases)
Test #5:
score: 0
Accepted
time: 34ms
memory: 9888kb
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:
2 6126 1143 4 10809 8283 176 142 3 11257 8040 471 3 10584 9863 2437 5 15169 14623 6490 5958 1 4 15046 6159 4075 1 4 15985 6581 972 256 4 7843 6192 5415 266 4 14312 1588 1025 27 4 8901 8799 7775 387
result:
ok correct (10 test cases)
Test #6:
score: 0
Accepted
time: 1080ms
memory: 23856kb
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:
223 199552 198655 197758 196861 195964 195067 194170 193273 192376 191479 190582 189685 188788 187891 186994 186097 185200 184303 183406 182509 181612 180715 179818 178921 178024 177127 176230 175333 174436 173539 172642 171745 170848 169951 169054 168157 167260 166363 165466 164569 163672 162775 16...
result:
ok correct (1 test case)
Test #7:
score: 0
Accepted
time: 425ms
memory: 17712kb
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:
112 99553 98658 97763 96868 95973 95078 94183 93288 92393 91498 90603 89708 88813 87918 87023 86128 85233 84338 83443 82548 81653 80758 79863 78968 78073 77178 76283 75388 74493 73598 72703 71808 70913 70018 69123 68228 67333 66438 65543 64648 63753 62858 61963 61068 60173 59278 58383 57488 56593 55...
result:
ok correct (1 test case)
Test #8:
score: 0
Accepted
time: 43ms
memory: 11332kb
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:
3 149019 118805 4044
result:
ok correct (1 test case)
Test #9:
score: 0
Accepted
time: 11ms
memory: 7532kb
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 4 1 66 2 11 1 2 53 1 2 27 42 2 10 1 1 10 1 41 2 40 38 2 31 40 2 15 1 2 88 93 1 1 2 2 1 2 20 1 1 11 1 12 1 1 2 9 43 2 31 1 2 7 16 2 34 1 1 23 2 79 17 2 31 1 1 10 2 26 24 2 6 40 2 30 19 2 2 61 2 23 22 3 4 8 1 2 42 49 2 24 1 2 57 1 2 20 1 2 2 29 2 55 1 1 27 2 25 42 2 2 1 1 26 1 31 2 79 49 2 19 85 1 5...
result:
ok correct (1000 test cases)
Test #10:
score: 0
Accepted
time: 3ms
memory: 9580kb
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:
2 44 57 2 4 1 2 54 42 2 17 34 2 32 44 2 54 40 2 27 1 1 49 2 58 79 1 15 1 80 2 31 82 2 32 1 2 59 1 2 41 13 2 32 1 2 28 1 1 48 2 78 1 3 59 40 1 3 64 6 1 2 55 21 2 50 48 2 20 15 2 2 50 2 11 8 2 15 11 2 52 81 2 39 1 1 31 2 3 1 2 67 1 1 7 2 46 13 2 37 1 2 28 71 2 23 1 3 46 58 80 2 11 18 2 12 1 1 45 1 65 ...
result:
ok correct (100 test cases)
Test #11:
score: 0
Accepted
time: 111ms
memory: 9812kb
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: 1512ms
memory: 20096kb
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:
223 20130 117915 77781 173519 118751 162296 98088 23786 54619 180008 13111 12611 58560 54059 20893 185328 27106 43572 160876 95235 44478 113869 3045 41677 41341 125236 186716 49690 28363 6642 120061 165937 89427 158351 53100 152365 60764 25712 66512 120322 118267 113275 33806 80232 137925 85238 9575...
result:
ok correct (1 test case)
Test #13:
score: 0
Accepted
time: 886ms
memory: 11280kb
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 191576 122073 188843 193601 190697 155081 162382 150325 195296 193627 123353 129096 173138 178367 134095 157371 187666 130465 185086 83785 185421 149097 188348 170620 175096 93309 175308 182226 184826 155554 163716 136265 172735 183039 182833 139720 159244 84989 179356 179608 67029 127330 167736...
result:
ok correct (1 test case)
Test #14:
score: 0
Accepted
time: 30ms
memory: 7760kb
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:
2 80 35 2 98 30 3 139 146 1 2 131 133 3 138 72 1 3 122 70 51 3 181 33 37 2 228 1 3 96 67 39 3 120 80 62 2 57 43 2 107 60 2 92 1 3 217 149 45 3 139 115 107 2 109 48 2 223 103 2 97 121 2 36 15 2 150 93 3 130 150 85 1 102 3 103 94 54 3 101 104 15 1 113 2 130 127 1 151 1 1 2 79 2 2 138 70 2 83 5 3 151 1...
result:
ok correct (200 test cases)
Test #15:
score: 0
Accepted
time: 23ms
memory: 10836kb
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:
2 2 1
result:
ok correct (1 test case)
Test #16:
score: 0
Accepted
time: 33ms
memory: 9636kb
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:
2 370 1
result:
ok correct (1 test case)
Test #17:
score: 0
Accepted
time: 20ms
memory: 9524kb
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:
2 7 39 2 29 37 2 44 1 2 36 43 2 37 16 2 46 43 2 28 1 2 34 1 2 39 21 2 11 1 2 43 1 2 7 19 2 8 28 2 6 14 2 30 1 2 5 1 2 43 37 2 4 1 2 8 1 2 9 30 2 8 23 2 35 21 2 6 19 2 19 4 2 17 35 2 2 3 2 26 1 2 39 47 2 33 1 2 25 2 2 6 7 2 41 44 2 42 1 2 14 28 2 41 36 2 46 3 2 14 1 2 29 10 2 23 33 2 23 1 2 44 19 2 4...
result:
ok correct (4081 test cases)