Submission #1291123

#TimeUsernameProblemLanguageResultExecution timeMemory
1291123XXBabaProBerkayCity (JOI17_city)C++20
22 / 100
238 ms28576 KiB
#include "Encoder.h" #include <bits/stdc++.h> using namespace std; #define PB push_back template<class T> using vec = vector<T>; using ll = long long; static ll tim = 0; static vec<vec<int>> adj; static vec<ll> sz; static ll dfs(int u, int p) { ll t = tim++; sz[u] = 1; for (int v : adj[u]) { if (v == p) continue; sz[u] += dfs(v, u); } ll c = (t << 18ll) + sz[u]; Code(u, c); return sz[u]; } void Encode(int N, int A[], int B[]) { adj.assign(N, vec<int>()); sz.assign(N, 0); for (int i = 0; i < N - 1; i++) { adj[A[i]].PB(B[i]); adj[B[i]].PB(A[i]); } dfs(0, 0); }
#include "Device.h" #include <bits/stdc++.h> using namespace std; template<class T> using vec = vector<T>; using ll = long long; void InitDevice() { } int Answer(long long S, long long T) { ll t1 = (S >> 18ll); ll t2 = (T >> 18ll); ll s1 = (S & ((1ll << 18ll) - 1ll)); ll s2 = (T & ((1ll << 18ll) - 1ll)); if (t1 <= t2 && t2 < t1 + s1) return 1; if (t2 <= t1 && t1 < t2 + s2) return 0; return 2; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...