# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1162917 | brinton | Road Closures (APIO21_roads) | C++20 | 2092 ms | 11212 KiB |
#include "roads.h"
#include <bits/stdc++.h>
using namespace std;
int k;
vector<long long> minimum_closure_costs(int N, vector<int> U,vector<int> V,vector<int> W) {
// N^2 solution
vector<vector<pair<int,int>>> edges;
vector<long long> ans(N,0);
edges.resize(N);
for(int i = 0;i < N-1;i++){
edges[U[i]].push_back({V[i],W[i]});
edges[V[i]].push_back({U[i],W[i]});
}
vector<int> sv(N);
iota(sv.begin(),sv.end(),0);
sort(sv.begin(),sv.end(),[&](auto a,auto b){
return edges[a].size() > edges[b].size();
});
ans[0] = N-1;
vector<bool> vis(N,true);
vector<int> deg(N);
for(int k = 1;k < N;k++){
vector<int> cv;
for(auto v:sv){
if(edges[v].size() <= k)break;
vis[v] = false;
deg[v] = edges[v].size();
cv.push_back(v);
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |