#include "Joi.h"
#include<bits/stdc++.h>
#define rep(i,l,r) for(int i=l;i<r;i++)
#define pb push_back
#define bit(x,i) ((x>>i)&1ll)
using namespace std;
typedef long long num;
typedef pair<int,int> point;
const int maxn=1e4+10,lg=60;
vector<int> G[maxn];
int te=0;
num x;
bool mark[maxn];
void dfs(int a){
mark[a]=1;
MessageBoard(a,bit(x,te));
te=(te+1)%lg;
for(int b:G[a]){
if(!mark[b]){
dfs(b);
}
}
}
void Joi(int N, int M, int A[], int B[], num X, int T) {
x=X;
for(int i = 0; i < M; i++){
G[A[i]].pb(B[i]);
G[B[i]].pb(A[i]);
}
dfs(55);
}
#include "Ioi.h"
#include<bits/stdc++.h>
#define rep(i,l,r) for(int i=l;i<r;i++)
#define pb push_back
#define bit(x,i) ((x>>i)&1ll)
using namespace std;
typedef long long num;
typedef pair<int,int> point;
const int maxn=1e4+10,lg=60;
vector<int> G0[maxn];
int te0=0;
num x0;
bool mark0[maxn];
int v,t[maxn],size0[maxn],par[maxn];
int root;
void dfs0(int a){
mark0[a]=1;
t[a]=te0;
te0=(te0+1)%lg;
size0[a]=1;
for(int b:G0[a]){
if(!mark0[b]){
par[b]=a;
dfs0(b);
size0[a]+=size0[b];
}
}
}
int ss=0;
void dfs1(int a){
if(ss==lg) return;
mark0[a]=1;
if(v){
x0|=1ll<<t[a];
}
ss++;
for(int b:G0[a]){
if(!mark0[b] && par[a]!=b){
v=Move(b);
dfs1(b);
if(ss==lg) return;
v=Move(a);
}
}
}
long long Ioi(int N, int M, int A[], int B[], int P, int V, int T) {
v=V;
for(int i = 0; i < M; i++){
G0[A[i]].pb(B[i]);
G0[B[i]].pb(A[i]);
}
dfs0(55);
fill(mark0,mark0+N,0);
root=P;
while(size0[root]<lg){
root=par[root];
v=Move(root);
}
dfs1(root);
return x0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
5 ms |
1120 KB |
Output is correct |
2 |
Correct |
6 ms |
1764 KB |
Output is correct |
3 |
Correct |
6 ms |
1948 KB |
Output is correct |
4 |
Correct |
5 ms |
1952 KB |
Output is correct |
5 |
Correct |
5 ms |
2024 KB |
Output is correct |
6 |
Correct |
6 ms |
2024 KB |
Output is correct |
7 |
Correct |
6 ms |
2076 KB |
Output is correct |
8 |
Correct |
5 ms |
2136 KB |
Output is correct |
9 |
Correct |
7 ms |
2144 KB |
Output is correct |
10 |
Incorrect |
6 ms |
2144 KB |
Wrong Answer [7] |
11 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
37 ms |
4620 KB |
Wrong Answer [7] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
7 ms |
4736 KB |
Output is correct |
2 |
Correct |
6 ms |
4736 KB |
Output is correct |
3 |
Correct |
4 ms |
4736 KB |
Output is correct |
4 |
Correct |
7 ms |
4736 KB |
Output is correct |
5 |
Correct |
9 ms |
4736 KB |
Output is correct |
6 |
Correct |
7 ms |
4736 KB |
Output is correct |
7 |
Correct |
6 ms |
4736 KB |
Output is correct |
8 |
Correct |
6 ms |
4736 KB |
Output is correct |
9 |
Correct |
26 ms |
4736 KB |
Output is correct |
10 |
Correct |
19 ms |
4736 KB |
Output is correct |
11 |
Correct |
24 ms |
4736 KB |
Output is correct |
12 |
Correct |
6 ms |
4736 KB |
Output is correct |
13 |
Correct |
6 ms |
4736 KB |
Output is correct |
14 |
Correct |
6 ms |
4736 KB |
Output is correct |
15 |
Correct |
4 ms |
4736 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
41 ms |
4780 KB |
Wrong Answer [7] |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
41 ms |
4896 KB |
Wrong Answer [7] |
2 |
Halted |
0 ms |
0 KB |
- |