제출 #1357051

#제출 시각아이디문제언어결과실행 시간메모리
1357051toast12Job Scheduling (IOI19_job)C++20
12 / 100
58 ms16060 KiB
#include "job.h"
#include <bits/stdc++.h>
using namespace std;

using ll = long long;

long long scheduling_cost(vector<int> p, vector<int> u, vector<int> d) {
    int n = p.size();
    vector<vector<int>> adj(n);
    for (int i = 1; i < n; i++) adj[p[i]].push_back(i);
    priority_queue<pair<int, int>> pq;
    ll cur_time = 0, ans = 0;
    pq.push({u[0], 0});
    while (!pq.empty()) {
        int i = pq.top().second;
        pq.pop();
        ans += u[i]*(cur_time+d[i]);
        cur_time += d[i];
        for (auto e : adj[i]) pq.push({u[e], e});
    }
	return ans;
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…