Submission #120836

#TimeUsernameProblemLanguageResultExecution timeMemory
120836Runtime_error_악어의 지하 도시 (IOI11_crocodile)C++14
46 / 100
298 ms262144 KiB
#include "crocodile.h"
#include <bits/stdc++.h>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
const int inf=1e3+9,MX=1e9+9;
vector< pair<int,int> > adj[inf];
bool ex[inf];
int dp[inf];

void dfs(int u,int par){

    if(ex[u])
        return ;
    vector<int> tmp = {MX,MX,MX};
    for(auto v:adj[u])
        if( v.first != par )
            dfs(v.first , u) , tmp[2] = dp[v.first]+v.second,sort(tmp.begin(),tmp.end());
    dp[u] = tmp[1];
}

int travel_plan(int N, int M, int R[][2], int L[], int K, int P[]){

    for(int i=0;i<M;i++)
        adj[ R[i][0] ].push_back( make_pair( R[i][1] , L[i] ) ),
        adj[ R[i][1] ].push_back(make_pair( R[i][0] , L[i] ));

    for(int i=0;i<K;i++)
        ex[ P[i] ] = 1;
    dfs(0,-1);
    return dp[0];
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...