# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
31163 | cscandkswon | Dreaming (IOI13_dreaming) | C++14 | 142 ms | 14200 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.
#include "dreaming.h"
#include <bits/stdc++.h>
using namespace std;
const int MAXN=100005;
bool vst[MAXN], chk[MAXN];
vector< pair<int, int> > edge[MAXN];
int dep[MAXN], lng[MAXN], radious;
vector<int> rad;
void dfs1(int nod){
int i;
vst[nod]=1, chk[nod]=1;
for(i=0; i<edge[nod].size(); i++) if(!vst[edge[nod][i].first])
dfs1(edge[nod][i].first);
for(i=0; i<edge[nod].size(); i++) if(!vst[edge[nod][i].first])
dep[nod]=max(dep[nod], dep[edge[nod][i].first]+edge[nod][i].second);
vst[nod]=0;
}
void dfs2(int nod, int rt){
int i, dis, mx1=0, mx2=0, idx1;
vst[nod]=1;
chk[nod]=1;
for(i=0; i<edge[nod].size(); i++)if(!vst[edge[nod][i].first]){
dis=dep[edge[nod][i].first]+edge[nod][i].second;
if(dis>mx1)
mx2=mx1, mx1=dis, idx1=i;
else if(dis>mx2)
mx2=dis;
}
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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |