Submission #1125884

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
11258842024-12-11 08:06:03nuutsnoyntonSynchronization (JOI13_synchronization)C++20
0 / 100
1632 ms37824 KiB
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const ll N = 2e5 + 2;
ll etseg[N], huu[N], out[N], par[18][N], is_connected[N], in[N],val[N], depth[N], last_connected[N];
ll Sum[8 * N], Has[8 * N], n;
vector < ll > adj[N];
ll timer = 0;
void Go(ll cur, ll parent) {
ll i;
par[0][cur] = parent;
for (i = 1; i <= 18; i++) par[i][cur] = par[i - 1][par[i - 1][cur]];
is_connected[cur] = 0;
in[cur] = ++timer;
// par[cur] = parent;
for ( ll child : adj[cur]) {
if ( child == parent) continue;
depth[child] = depth[cur] + 1;
Go(child, cur);
}
out[cur] = timer;
return ;
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

synchronization.cpp: In function 'void Go(ll, ll)':
synchronization.cpp:15:47: warning: iteration 17 invokes undefined behavior [-Waggressive-loop-optimizations]
   15 |         for (i = 1; i <= 18; i++) par[i][cur] = par[i - 1][par[i - 1][cur]];
      |                                   ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
synchronization.cpp:15:23: note: within this loop
   15 |         for (i = 1; i <= 18; i++) par[i][cur] = par[i - 1][par[i - 1][cur]];
      |                     ~~^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...