QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#720932 | #9525. Welcome to Join the Online Meeting! | KOH-# | WA | 69ms | 23796kb | C++14 | 1.8kb | 2024-11-07 14:44:40 | 2024-11-07 14:44:40 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
template <typename T>
inline void read(T &x){
x=0;char ch=getchar();bool f=false;
while(!isdigit(ch)) f|=ch=='-',ch=getchar();
while(isdigit(ch)) x=(x<<1)+(x<<3)+(ch^48),ch=getchar();
x=f?-x:x;return;
}
template <typename T>
inline void print(T x){
if(x<0) putchar('-'),x=-x;
if(x>9) print(x/10);
putchar(x%10^48);return;
}
#define ll long long
const int N=2e5+5,M=5e5+5;
int a[N],b[N];
int f[N],cnt;
int head[N],ver[M*2],ne[M*2],tot;
int n,m,k,t;
void add(int x,int y){
ver[++tot]=y;
ne[tot]=head[x],head[x]=tot;
}
int get(int x){
if(f[x]==x) return x;
return f[x]=get(f[x]);
}
void dfs(int x,int com){
int c=0;
for(int i=head[x];i;i=ne[i]){
int y=ver[i];
if(b[y]!=0) continue;
c++;
b[y]=x;
}
if(c>0) t++;
if(c>0 && com){
printf("%d %d",x,c);
for(int i=head[x];i;i=ne[i]){
int y=ver[i];
if(b[y]==x) printf(" %d",y);
}
puts("");
}
for(int i=head[x];i;i=ne[i]){
int y=ver[i];
if(b[y]==x && a[y]==0){
dfs(y,com);
}
}
}
int main(){
scanf("%d%d%d",&n,&m,&k);
for(int i=1;i<=n;i++) f[i]=i;
cnt=k+1;
for(int i=1;i<=k;i++){
int x;
scanf("%d",&x);
a[x]=1;
}
for(int i=1;i<=m;i++){
int x,y;
scanf("%d%d",&x,&y);
if(a[x]>0 && a[y]>0){
continue;
}
if(a[x]>0){
a[x]=2;
add(y,x);
continue;
}
if(a[y]>0){
a[y]=2;
add(x,y);
continue;
}
add(x,y);
add(y,x);
if(get(x)!=get(y)){
f[x]=f[y];
cnt++;
}
}
if(cnt!=n){
puts("No");
return 0;
}
int p=-1;
for(int i=1;i<=n;i++){
if(a[i]==1){
puts("No");
return 0;
}
if(p==-1 && a[i]==0) p=i;
}
puts("Yes");b[p]=n+1;
dfs(p,0);
memset(b,0,sizeof b);
printf("%d\n",t);b[p]=n+1;
dfs(p,1);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 10020kb
input:
4 5 2 3 4 1 2 1 3 2 3 3 4 2 4
output:
Yes 2 1 2 3 2 2 1 4
result:
ok ok
Test #2:
score: 0
Accepted
time: 1ms
memory: 9856kb
input:
4 5 3 2 4 3 1 2 1 3 2 3 3 4 2 4
output:
No
result:
ok ok
Test #3:
score: 0
Accepted
time: 0ms
memory: 8048kb
input:
4 6 2 3 4 1 3 1 4 2 3 2 4 1 2 3 4
output:
Yes 1 1 3 2 4 3
result:
ok ok
Test #4:
score: 0
Accepted
time: 0ms
memory: 7780kb
input:
6 6 0 1 2 2 3 3 1 4 5 5 6 6 4
output:
No
result:
ok ok
Test #5:
score: 0
Accepted
time: 64ms
memory: 23796kb
input:
200000 199999 2 142330 49798 49798 116486 116486 64386 64386 192793 192793 61212 61212 138489 138489 83788 83788 89573 89573 8596 8596 156548 156548 41800 41800 14478 14478 27908 27908 82806 82806 9353 9353 160166 160166 92308 92308 36265 36265 126943 126943 190578 190578 191148 191148 177381 177381...
output:
Yes 199998 1 2 178679 95113 178679 1 186222 186222 1 122914 122914 1 18533 18533 1 66240 66240 1 143831 143831 1 52965 52965 1 45501 45501 1 36293 36293 1 95051 95051 1 114707 114707 1 90623 90623 1 10911 10911 1 1942 1942 1 41382 41382 1 188734 188734 1 107093 107093 1 154956 154956 1 85071 85071 1...
result:
ok ok
Test #6:
score: 0
Accepted
time: 69ms
memory: 23084kb
input:
199999 199998 1 136702 159826 166341 166341 59559 59559 169672 169672 102084 102084 136269 136269 57057 57057 59116 59116 119963 119963 85663 85663 33942 33942 84604 84604 189395 189395 154906 154906 22175 22175 144902 144902 198523 198523 35993 35993 35690 35690 47504 47504 104458 104458 68253 6825...
output:
Yes 199997 1 2 191801 172082 191801 1 65736 65736 1 10794 10794 1 50503 50503 1 194943 194943 1 42759 42759 1 35447 35447 1 55027 55027 1 175222 175222 1 103541 103541 1 104528 104528 1 21620 21620 1 141581 141581 1 74591 74591 1 43436 43436 1 42438 42438 1 84592 84592 1 29722 29722 1 156314 156314 ...
result:
ok ok
Test #7:
score: 0
Accepted
time: 60ms
memory: 23572kb
input:
199998 199997 0 67665 130538 130538 101337 101337 73749 73749 138128 138128 1274 1274 108069 108069 50961 50961 7039 7039 109946 109946 170551 170551 193330 193330 113590 113590 92775 92775 2146 2146 43591 43591 125033 125033 75583 75583 173991 173991 46820 46820 3986 3986 163272 163272 91657 91657...
output:
Yes 199996 1 2 102870 5661 102870 1 182503 182503 1 106861 106861 1 147686 147686 1 106747 106747 1 182217 182217 1 124210 124210 1 72832 72832 1 107526 107526 1 187820 187820 1 28484 28484 1 57839 57839 1 78991 78991 1 150102 150102 1 184106 184106 1 64483 64483 1 135180 135180 1 49069 49069 1 7286...
result:
ok ok
Test #8:
score: 0
Accepted
time: 23ms
memory: 11576kb
input:
199997 199996 1 158877 35837 79489 79489 72932 72932 14238 14238 73007 73007 66909 66909 49015 49015 129581 129581 138449 138449 94774 94774 189625 189625 23578 23578 31043 31043 146625 146625 161587 161587 136966 136966 184859 184859 27587 27587 155616 155616 72392 72392 195320 195320 75551 75551 1...
output:
No
result:
ok ok
Test #9:
score: 0
Accepted
time: 19ms
memory: 8484kb
input:
200000 199999 1 29111 29111 80079 29111 131587 29111 197066 29111 125194 29111 156736 50697 29111 29111 74382 113595 29111 29111 26046 29111 172868 178564 29111 174875 29111 93471 29111 88216 29111 29111 147893 29111 145746 29111 34038 146500 29111 67862 29111 29111 19222 29111 121535 29111 49102 29...
output:
No
result:
ok ok
Test #10:
score: 0
Accepted
time: 33ms
memory: 11908kb
input:
199999 199998 2 52512 104330 130511 66864 139434 66864 92884 66864 66864 185580 184115 66864 137395 66864 66864 43463 118395 66864 111697 66864 66864 133237 66864 112507 66864 140264 66864 10 66864 151082 155779 66864 107988 66864 148839 66864 66864 40909 172685 66864 66864 189374 180054 66864 49 66...
output:
Yes 2 1 1 66864 66864 199997 152191 114634 139293 174586 166708 148083 113473 51973 40621 24729 76417 61418 8724 198149 133889 48404 16570 71892 189896 124248 97342 29065 127677 122933 54921 187274 29825 42364 38058 57622 184269 136390 73229 94147 195417 121369 139089 119860 191448 131894 139973 588...
result:
ok ok
Test #11:
score: 0
Accepted
time: 29ms
memory: 9840kb
input:
199998 199997 0 77056 67665 130538 77056 77056 101337 73749 77056 77056 138128 1274 77056 77056 108069 50961 77056 77056 7039 77056 109946 77056 170551 193330 77056 113590 77056 77056 92775 2146 77056 43591 77056 77056 125033 75583 77056 173991 77056 46820 77056 77056 3986 77056 163272 91657 77056 ...
output:
Yes 2 1 1 77056 77056 199996 108040 162420 130135 168898 4125 67434 132013 36554 114001 171315 14656 37474 46087 66480 161076 103822 131635 148656 136590 125073 111510 124527 62120 126154 40223 33351 140740 48401 168088 47 53313 116117 151667 51110 55915 195842 151790 175746 63508 8461 184584 111196...
result:
ok ok
Test #12:
score: 0
Accepted
time: 40ms
memory: 8060kb
input:
1000 499500 999 458 720 932 821 847 788 447 593 430 896 257 238 380 924 968 30 389 306 278 824 83 342 329 513 476 313 714 348 602 105 758 777 663 1000 20 756 546 256 123 340 69 244 772 625 390 557 911 272 496 127 409 436 845 574 958 921 24 17 770 630 851 147 178 976 77 181 230 723 974 345 501 683 24...
output:
Yes 1 987 999 422 67 813 291 807 123 296 89 197 428 396 13 499 402 102 796 607 254 889 483 777 761 956 233 490 913 609 147 149 163 789 574 648 753 783 107 379 129 427 184 627 313 852 409 470 856 504 774 756 90 403 532 20 672 932 924 634 495 876 649 232 457 942 885 890 16 307 337 693 599 850 755 863 ...
result:
ok ok
Test #13:
score: -100
Wrong Answer
time: 40ms
memory: 8584kb
input:
1000 499000 765 622 257 281 601 593 967 704 173 609 700 782 592 356 595 431 307 933 886 213 478 8 832 877 606 335 253 420 631 345 179 961 437 238 641 513 997 192 483 152 951 580 331 401 122 155 814 228 633 372 918 346 464 3 992 416 953 650 668 971 899 76 575 880 85 194 541 26 348 93 815 554 64 850 5...
output:
No
result:
wrong answer jury has found a solution, but participant hasn't