Submission #698436

#TimeUsernameProblemLanguageResultExecution timeMemory
698436amunduzbaevCity (JOI17_city)C++17
22 / 100
459 ms44768 KiB
#include "Encoder.h" #include "bits/stdc++.h" using namespace std; const int MX = 25e4; void Encode(int n, int a[], int b[]){ vector<vector<int>> edges(n); for(int i=0;i+1<n;i++){ edges[a[i]].push_back(b[i]); edges[b[i]].push_back(a[i]); } vector<int> tin(n), tout(n); int t = 0; function<void(int, int)> dfs = [&](int u, int p){ tin[u] = ++t; for(auto x : edges[u]){ if(x == p) continue; dfs(x, u); } tout[u] = t; }; dfs(0, 0); for(int i=0;i<n;i++){ tin[i]--, tout[i]--; Code(i, tin[i] * 1ll * MX + tout[i]); } }
#include "Device.h" #include "bits/stdc++.h" using namespace std; const int MX = 25e4; void InitDevice(){ } int Answer(long long a, long long b){ int l = a / MX, r = a % MX; int L = b / MX, R = b % MX; if(L <= l && r <= R){ return 0; } if(l <= L && R <= r){ return 1; } return 2; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...