제출 #720272

#제출 시각아이디문제언어결과실행 시간메모리
720272thimote75공장들 (JOI14_factories)C++14
컴파일 에러
0 ms0 KiB

#include <bits/stdc++.h>

using namespace std;

#define num long long

#define t_road pair<int, num>
#define rnext first
#define rcost second
#define t_roads vector<t_road>
#define graph vector<t_roads>

#define idata vector<int>
#define ndata vector<num>

#define inf 1e18

int nbNodes, nbQuery;

graph roads;

num dfs (int node, int parent, ndata &res) {
    for (t_road road : roads[node]) if (road.rnext != parent)
        res[node] = min(res[node], dfs(road.rnext, node, res) + road.rcost);

    return res[node];
}

ndata dist_state (idata query) {
    ndata res(nbNodes, inf);
    for (int u : query) res[u] = 0;

    dfs(0, -1, res);

    return res;
}

ndata read (int size) {
    idata mu(size);
    for (int i = 0; i < size; i ++)
        cin >> mu[i];
    
    return dist_state(mu);
}

int main () {
    ios_base::sync_with_stdio(false); cin.tie(NULL);

    cin >> nbNodes >> nbQuery;
    roads.resize(nbNodes);

    for (int iR = 1; iR < nbNodes; iR ++) {
        int a, b, c;
        cin >> a >> b >> c;

        roads[a].push_back({ b, c });
        roads[b].push_back({ a, c });
    }

    for (int idQuery = 0; idQuery < nbQuery; idQuery ++) {
        int s, t;
        cin >> s >> t;

        ndata S, T;
        S = read(s);
        T = read(t);

        num result = inf;
        for (int i = 0; i < nbNodes; i ++)
            result = min(result, S[i] + T[i]);
        
        cout << result << endl;
    }
}

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

/usr/bin/ld: /tmp/cchFwUrH.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cctu5QZJ.o:factories.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/cchFwUrH.o: in function `main':
grader.cpp:(.text.startup+0x37d): undefined reference to `Init(int, int*, int*, int*)'
/usr/bin/ld: grader.cpp:(.text.startup+0x412): undefined reference to `Query(int, int*, int, int*)'
collect2: error: ld returned 1 exit status