제출 #115450

#제출 시각아이디문제언어결과실행 시간메모리
115450arnold518악어의 지하 도시 (IOI11_crocodile)C++14
46 / 100
279 ms262144 KiB
#include <bits/stdc++.h>
#include "crocodile.h"
using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

const int MAXN = 1000;
const ll INF = numeric_limits<ll>::max();

vector<pii> adj[MAXN+10];
ll dist[MAXN+10], dp[MAXN+10];

void dfs(int now, int par, ll dis)
{
    dist[now]=dis;
    if(adj[now].size()==1) { dp[now]=dis; return; }
    pll ret={INF, INF};
    for(pii nxt : adj[now])
    {
        if(nxt.first==par) continue;
        dfs(nxt.first, now, dis+nxt.second);
        if(dp[nxt.first]<=ret.first) ret.second=ret.first, ret.first=dp[nxt.first];
        else if(dp[nxt.first]<=ret.second) ret.second=dp[nxt.first];
    }
    dp[now]=ret.second;
}

int travel_plan(int N, int M, int R[][2], int L[], int K, int P[])
{
    int i, j;
    for(i=0; i<M; i++)
    {
        int u=R[i][0], v=R[i][1], w=L[i];
        adj[u].push_back({v, w});
        adj[v].push_back({u, w});
    }

    dfs(0, -1, 0);
    //for(i=0; i<N; i++) printf("%lld %lld\n", dist[i], dp[i]);
    return dp[0];
}

컴파일 시 표준 에러 (stderr) 메시지

crocodile.cpp: In function 'int travel_plan(int, int, int (*)[2], int*, int, int*)':
crocodile.cpp:32:12: warning: unused variable 'j' [-Wunused-variable]
     int i, j;
            ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...