QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#423878 | #8704. 排队 | Williamxzh | 27 | 74ms | 9980kb | C++23 | 1.2kb | 2024-05-28 18:41:53 | 2024-05-28 18:41:53 |
Judging History
answer
#include <bits/stdc++.h>
#define il inline
using namespace std;
il int read(){
int x=0,c=getchar();
while(!isdigit(c)) c=getchar();
while(isdigit(c)) x=x*10+c-48,c=getchar();
return x;
}
const int N=5e5+5;
int sid,T,n,m,fa[N],siz[N];
vector<int> e[N];
il void adde(int x,int y){e[x].push_back(y);}
il void add(int x,int v){
while(x!=-1) siz[x]+=v,x=fa[x];
}
il bool cmp(int x,int y){return x>y;}
il int get(int x){
int ret=1,y=fa[x];
while(x){
y=fa[x];sort(e[y].begin(),e[y].end(),cmp);
for(int z:e[y]) if(z!=x) ret+=siz[z];else break;
x=y,ret+=(y>0);
}
return ret;
}
il void del(int x){
int y=fa[x];
for(int i=0;i<e[y].size();++i)
if(e[y][i]==x){e[y].erase(e[y].begin()+i);return ;}
}
int opt,x,y,z,u,v,w;
int main(){
scanf("%d%d",&sid,&T);fa[0]=-1,siz[0]=1;
for(int i=1;i<=T;++i){
opt=read();
if(opt==1) x=read(),y=++n,fa[y]=x,adde(x,y),add(y,1);
if(opt==2){
x=read(),u=read();
add(fa[x],-siz[x]),del(x);
adde(u,x),fa[x]=u,add(u,siz[x]);
}
if(opt==3){
x=read();
printf("%d\n",get(x));
}
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 4
Accepted
Test #1:
score: 4
Accepted
time: 2ms
memory: 7984kb
input:
0 8 1 0 1 1 1 2 3 2 2 2 0 3 1 3 2 3 3
output:
2 3 1 2
result:
ok 4 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 7856kb
input:
0 485 1 0 2 1 0 2 1 0 3 1 3 1 1 0 1 1 3 3 2 3 2 2 2 1 2 2 1 2 2 0 3 1 3 1 3 1 1 0 2 3 0 1 2 3 3 1 3 2 3 2 1 1 2 2 0 1 3 2 3 0 2 1 0 1 1 2 8 6 2 3 0 3 3 2 4 1 1 4 3 2 1 0 1 5 1 4 2 3 2 2 7 4 3 5 1 7 1 8 2 7 5 3 14 3 2 2 6 2 3 13 1 0 3 11 1 13 3 1 3 4 1 4 2 15 0 2 15 9 2 17 16 3 13 1 17 2 17 12 3 3 3 ...
output:
1 1 3 3 3 3 2 2 4 3 6 2 14 2 12 14 17 12 5 12 18 15 13 7 23 29 19 13 22 13 19 36 4 15 38 35 30 31 43 2 32 11 53 15 40 3 36 39 16 25 30 24 7 10 14 38 12 38 40 35 10 19 30 15 31 8 15 69 2 24 3 30 44 57 57 38 41 37 40 50 40 17 65 83 49 56 74 17 40 82 39 71 92 26 37 76 8 34 14 63 37 43 13 46 37 92 19 69...
result:
ok 153 lines
Test #3:
score: 0
Accepted
time: 2ms
memory: 7984kb
input:
0 475 1 0 2 1 0 2 1 0 3 1 2 1 0 3 1 3 1 3 1 3 1 3 1 2 1 0 1 1 1 1 1 3 3 1 1 2 2 3 2 1 0 3 2 3 2 2 6 3 1 5 3 7 1 5 1 5 1 1 1 5 3 9 1 7 3 6 3 5 3 1 2 10 2 1 3 1 10 1 13 3 8 2 5 0 2 7 0 2 11 6 1 7 1 15 2 11 2 2 3 0 1 5 3 11 2 14 7 2 7 5 2 1 0 3 16 3 14 1 16 2 13 2 3 10 2 12 7 2 1 0 1 2 3 19 1 12 3 19 1...
output:
1 1 1 1 1 1 1 3 3 4 6 11 4 1 8 16 6 7 19 7 7 5 28 10 28 22 9 31 3 21 23 31 26 9 30 5 39 40 45 48 1 28 54 47 4 48 37 50 26 5 22 41 12 1 63 46 32 62 43 28 45 23 37 1 13 20 64 10 48 7 41 13 10 54 16 10 66 7 65 1 76 35 74 14 56 16 28 68 76 10 80 12 4 25 4 13 44 69 76 4 21 15 4 49 90 39 87 42 90 73 43 94...
result:
ok 159 lines
Test #4:
score: 0
Accepted
time: 1ms
memory: 7904kb
input:
0 473 1 0 3 1 2 1 0 3 1 2 1 0 1 0 1 1 1 1 2 1 0 3 4 1 3 1 1 1 2 3 4 1 6 2 6 1 3 2 1 1 2 4 0 3 6 2 8 5 2 6 2 2 3 0 2 7 2 1 3 2 4 2 3 3 3 3 2 1 0 2 3 2 1 6 1 6 3 7 3 1 2 2 0 3 4 3 6 1 2 3 5 3 8 1 9 2 4 2 1 5 1 6 2 3 0 3 16 1 4 2 8 3 3 15 3 6 3 1 1 7 3 11 1 6 1 10 1 20 3 10 1 20 1 22 3 19 3 8 1 11 3 2 ...
output:
1 1 3 5 1 6 1 1 2 11 6 3 10 11 10 5 9 15 13 2 15 7 10 6 29 17 10 26 6 3 30 18 31 11 17 7 22 24 17 30 19 26 14 40 43 6 14 37 43 46 9 44 45 12 7 24 23 18 10 39 56 3 50 18 1 50 69 69 37 44 20 30 2 17 41 61 60 39 25 27 66 8 16 81 43 54 10 79 59 56 63 10 11 26 75 42 10 46 6 12 77 69 36 6 99 67 79 1 83 47...
result:
ok 145 lines
Subtask #2:
score: 0
Time Limit Exceeded
Test #5:
score: 0
Time Limit Exceeded
input:
1 298913 1 0 3 1 3 1 3 1 3 1 3 1 1 0 1 0 3 3 1 2 1 2 3 5 3 5 1 1 1 3 1 4 3 3 1 3 1 6 3 7 3 2 3 5 3 8 3 2 1 8 3 3 1 4 3 2 3 7 1 3 3 4 1 10 3 14 3 13 1 12 3 4 1 8 1 15 1 16 3 9 3 14 3 10 3 8 3 7 1 16 1 15 3 16 3 13 1 19 3 13 3 1 3 14 1 18 1 22 3 8 1 17 3 18 3 9 1 18 3 9 3 1 1 20 3 11 3 5 3 2 3 22 1 22...
output:
1 1 1 1 1 1 3 3 1 3 4 5 7 4 1 4 3 7 14 2 7 3 18 17 11 4 13 2 2 18 21 12 17 3 3 22 22 6 5 20 5 17 22 27 18 23 31 4 1 19 21 12 22 34 33 5 22 40 40 8 14 42 35 9 40 24 18 13 36 8 25 49 32 34 47 14 47 19 38 10 14 31 40 17 20 45 46 1 35 1 43 9 47 33 56 2 8 19 41 21 18 50 22 61 27 2 2 6 4 58 62 35 61 59 10...
result:
Subtask #3:
score: 0
Time Limit Exceeded
Test #20:
score: 0
Time Limit Exceeded
input:
2 298235 1 0 1 1 3 2 1 0 1 3 3 4 3 3 3 3 3 2 3 4 3 2 3 3 1 2 3 3 1 4 1 2 1 1 3 5 3 8 1 5 1 9 3 10 3 8 3 10 3 5 3 8 3 5 1 2 1 9 3 5 3 7 3 12 3 3 1 6 3 4 3 3 3 11 3 8 3 9 3 7 3 6 3 4 1 12 1 11 3 13 3 13 1 11 3 16 3 6 3 14 3 9 3 5 3 13 1 9 1 17 3 16 3 13 3 5 3 15 3 8 3 4 3 13 1 18 3 15 3 16 3 19 3 4 1 ...
output:
2 2 1 1 4 2 4 1 1 8 5 10 5 10 8 5 8 9 8 11 1 2 1 8 6 11 9 3 2 4 4 9 3 15 13 12 4 9 4 12 10 6 2 4 10 9 16 2 15 13 13 7 3 3 11 21 7 5 4 2 10 5 15 20 6 17 12 5 24 4 15 13 7 10 17 6 19 9 19 19 12 3 18 16 21 19 26 12 25 21 19 10 14 24 8 8 14 16 32 8 14 33 30 14 4 1 20 21 37 22 25 7 18 27 28 35 37 18 33 4...
result:
Subtask #4:
score: 23
Accepted
Test #35:
score: 23
Accepted
time: 74ms
memory: 9868kb
input:
3 299743 1 0 1 1 3 1 1 2 3 2 1 0 3 3 3 2 3 1 3 2 2 2 1 3 3 3 3 3 4 3 1 3 2 3 2 2 1 0 3 2 3 1 3 1 1 0 3 2 1 2 1 1 3 2 2 5 2 1 6 1 0 2 5 2 1 7 3 8 3 5 3 5 2 7 5 2 9 4 3 5 3 8 2 6 2 2 3 0 2 2 0 1 1 2 3 1 1 8 2 7 0 3 3 1 12 2 13 9 1 5 2 2 1 2 14 13 1 12 2 1 0 2 12 10 2 15 12 1 0 1 6 3 6 2 3 2 2 17 6 3 4...
output:
1 2 4 3 2 3 4 4 1 2 3 3 3 2 2 4 5 8 9 9 7 6 12 14 6 18 11 4 4 18 7 14 5 11 11 25 10 13 14 5 17 19 12 19 10 19 34 32 3 41 19 44 6 2 22 8 34 36 18 16 10 37 24 37 3 2 55 33 28 43 8 44 61 9 18 28 31 64 45 54 18 51 7 71 61 6 59 19 37 4 47 83 81 20 71 24 24 66 93 33 48 59 23 35 60 43 47 79 44 40 22 84 17 ...
result:
ok 99743 lines
Test #36:
score: 0
Accepted
time: 70ms
memory: 9968kb
input:
3 299432 1 0 3 1 1 1 2 1 0 1 2 2 3 1 1 2 1 3 2 4 3 1 5 2 2 0 3 6 2 1 0 1 4 2 4 1 3 2 1 3 3 3 3 5 2 7 0 1 6 2 9 8 3 1 3 8 3 8 1 4 2 10 7 1 2 1 1 2 1 0 1 11 3 5 3 4 1 0 3 11 1 11 2 10 3 3 13 3 10 1 1 3 11 1 7 1 8 3 11 3 3 3 16 3 1 3 13 3 2 2 8 4 1 7 2 17 6 3 1 3 3 3 5 3 2 1 2 1 13 3 15 2 5 2 1 5 3 13 ...
output:
1 5 1 5 7 3 6 6 12 8 5 6 11 4 5 12 9 8 7 4 8 15 17 4 7 8 18 23 3 4 1 15 1 16 26 21 13 16 23 29 20 25 26 24 26 38 42 43 18 21 37 8 29 42 50 9 6 54 19 24 29 12 14 21 6 44 30 27 25 39 21 11 39 38 43 29 8 28 6 18 52 29 11 17 23 13 13 35 7 35 71 16 56 19 38 34 54 7 73 28 58 1 22 27 51 53 23 95 57 41 96 9...
result:
ok 99750 lines
Test #37:
score: 0
Accepted
time: 74ms
memory: 9980kb
input:
3 299115 1 0 3 1 3 1 2 1 0 1 1 2 2 0 3 1 2 2 0 3 1 3 2 2 1 0 2 2 1 2 1 0 1 2 3 1 2 1 0 2 1 0 1 2 3 3 1 0 2 1 0 1 3 2 2 0 3 2 2 4 1 3 3 2 6 5 3 4 1 6 1 1 3 3 1 5 2 9 7 1 1 3 10 2 10 8 3 10 3 9 2 5 4 1 4 3 8 2 10 3 3 10 1 6 1 12 3 13 1 9 3 2 2 11 8 1 8 2 5 4 2 15 8 1 2 1 11 3 5 3 9 1 16 3 11 3 12 1 3 ...
output:
1 1 2 2 1 1 4 2 3 6 5 8 9 4 4 3 11 1 11 16 9 14 9 9 9 15 22 5 5 13 22 10 18 15 27 6 7 35 14 22 28 38 3 3 4 16 11 8 26 15 35 30 27 21 37 19 16 56 4 32 54 32 18 19 13 22 44 28 62 22 2 77 28 79 60 44 78 46 34 45 5 35 8 61 16 59 60 1 76 11 19 86 11 51 59 73 23 104 96 35 88 66 9 10 85 23 83 85 97 81 97 1...
result:
ok 99683 lines
Subtask #5:
score: 0
Skipped
Dependency #1:
100%
Accepted
Dependency #2:
0%