Submission #563777

#TimeUsernameProblemLanguageResultExecution timeMemory
563777pvpwarriorRoad Closures (APIO21_roads)C++14
5 / 100
154 ms22708 KiB
#include "roads.h"
#include <bits/stdc++.h>
using namespace std;
#define fastio ios_base::sync_with_stdio(false); cin.tie(NULL)
#define ll long long
#define vi std::vector<ll>
#define si set<ll>
#define INF 100000000
#define pb push_back
#define mod 1000000007

std::vector<long long> minimum_closure_costs(int N, std::vector<int> U,
                                             std::vector<int> V,
                                             std::vector<int> W) {
    ll n = N;
    set<pair < ll, ll > > adj[n];
    // for (int i = 0; i < n-1; ++i){
    //     cin >> u[i] >> v[i] >> w[i];
    // }
    // for (int i = 0; i < n; ++i){
    //     cin >> v[i];
    // }
    // for (int i = 0; i < n; ++i){
    //     cin >> w[i];
    // }
    ll sum = 0;
    for (int i = 0; i < n-1; ++i){
        adj[V[i]].insert(make_pair(W[i] , U[i]));
        adj[U[i]].insert(make_pair(W[i] , V[i]));
        sum += W[i];
    }
    vi ans(n,sum);
    sort(W.begin(), W.end());
    reverse(W.begin(), W.end());

    for (int i = 1; i < n; ++i){
        ans[i] = ans[i-1] - W[i-1];
    }
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...