Submission #646964

#TimeUsernameProblemLanguageResultExecution timeMemory
646964ksu2009enPaths (RMI21_paths)C++17
19 / 100
1088 ms9084 KiB
#pragma GCC optimize("O3") #include <iostream> #include <vector> #include <string> #include <math.h> #include <cmath> #include <iomanip> #include <cstdio> #include <algorithm> #include <map> #include <set> #include <queue> #include <stack> #include <deque> #include <bitset> #include <cstring> #include <unordered_map> #define endl '\n' using namespace std; typedef long long ll; vector<vector< pair<pair<int, ll>, int> >>d; ll mx = -1, pos = 0, local = 0; void dfs(int v, int par, ll cost){ if(cost > mx){ mx = cost; pos = v; } for(auto i: d[v]){ if(i.first.first != par){ dfs(i.first.first, v, cost + (i.second != local ? i.first.second : 0)); } } } bool dfs_2(int v, int par){ if(v == pos) return true; for(auto &i: d[v]){ if(i.first.first == par) continue; if(dfs_2(i.first.first, v)){ i.second = local; return true; } } return false; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); ll n, k; cin >> n >> k; d.resize(n + 1); for(int i = 0; i < n - 1; i++){ ll x, y, c; cin >> x >> y >> c; d[x].push_back({{y, c}, 0}); d[y].push_back({{x, c}, 0}); } ll ans = 0; for(int root = 1; root <= n; root++){ local = root; ans = 0; for(int step = 1; step <= k; step++){ mx = -1, pos = 0; dfs(root, -1, 0); bool unused = dfs_2(root, -1); ans += mx; } cout << ans << endl; } return 0; }

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:86:18: warning: unused variable 'unused' [-Wunused-variable]
   86 |             bool unused = dfs_2(root, -1);
      |                  ^~~~~~
#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...