Submission #1162478

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
11624782025-03-06 08:33:31brintonRoad Closures (APIO21_roads)C++20
24 / 100
2095 ms21832 KiB
#include "roads.h"
#include <bits/stdc++.h>
using namespace std;
int k;
vector<vector<pair<int,int>>> edges;
pair<long long,long long> dfs(int cur,int par){
vector<pair<long long,long long>> child;// not delete parent, delete parent
for(auto [nxt,w]:edges[cur]){
if(nxt == par)continue;
auto [np,cp] = dfs(nxt,cur);
np = min(np,cp+w);
child.push_back({np,cp+w});
}
long long base = 0;
vector<long long> diff;
for(auto [np,cp]:child){
base += np;
diff.push_back(cp-np);
}
sort(diff.begin(),diff.end());
int out = 1+child.size();
int del = out-k;// k must greater than 1
pair<long long,long long> result;// not delete parent, delete parent
long long ndelp = base,delp = base;
// ndel parent, (all del on child)
for(int i = 0;i < del;i++){
ndelp += diff[i];
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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...