# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
12819 | dohyun0324 | Dreaming (IOI13_dreaming) | C++98 | 111 ms | 20216 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<algorithm>
#include<vector>
using namespace std;
int maxx,t,dap,s[100010],w,arr[200010],top,ch[100010],pos[100010],big1[100010],big2[100010];
vector<int>d[100010];
struct data{
int x,y,c;
bool operator<(const data&r)const{
return x<r.x;
}
}con[200010];
void dfs1(int x,int cost)
{
int i;
ch[x]=1;
if(maxx<cost) maxx=cost, t=x;
for(i=pos[x];;i++)
{
if(x!=con[i].x) break;
if(ch[con[i].y]) continue;
dfs1(con[i].y,cost+con[i].c);
d[x].push_back(big1[con[i].y]+con[i].c);
}
int p=0;
for(i=0;i<d[x].size();i++){
if(big1[x]<d[x][i]){big1[x]=d[x][i]; p=i;}
}
for(i=0;i<d[x].size();i++){
if(big2[x]<d[x][i] && i!=p) big2[x]=d[x][i];
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... |