# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
674349 | Ahmed57 | Sightseeing (NOI14_sightseeing) | C++14 | 2931 ms | 135888 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
//LCA
#include <bits/stdc++.h>
using namespace std;
const int N=1e5+5;
vector<pair<int,int>> adj[N];
long long P[N][18],mi[N][18];
long long hi[N];
int n,m,q;
void dfs(int node,int pa,int ed){
P[node][0]=pa;
hi[node]=hi[pa]+1;
mi[node][0] = ed;
for(int k=1;k<=17;k++){
P[node][k]=P[P[node][k-1]][k-1];
mi[node][k] = min(mi[node][k-1],mi[P[node][k-1]][k-1]);
}
for(auto i:adj[node]){
if(i.first==pa) continue;
dfs(i.first,node,i.second);
}
}
long long lca(int x,int y)
{
long long mii = 1e18;
if(hi[x]<hi[y]) swap(x,y);
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |