This documentation is automatically generated by competitive-verifier/competitive-verifier
// @brief Minimum Diameter Spanning Tree
#define PROBLEM "https://judge.yosupo.jp/problem/minimum_diameter_spanning_tree"
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2")
#include <iostream>
//#include "blazingio/blazingio.min.hpp"
#include "cp-algo/graph/shortest_path.hpp"
#include "cp-algo/tree/diameter.hpp"
#include <bits/stdc++.h>
using namespace std;
using namespace cp_algo::graph;
template<weighted_undirected_graph_type graph>
auto minimum_diameter_spanning_tree(graph const& g) {
int64_t min_diameter = shortest_path_context::inf;
cp_algo::big_vector<edge_index> best_edges;
for(auto v: g.nodes()) {
auto [_, p] = dijkstra(g, v);
auto d = tree_diameter(g, &p);
if (d < min_diameter) {
min_diameter = d;
best_edges = p;
}
}
return std::pair{min_diameter, best_edges};
}
void solve() {
int n, m;
cin >> n >> m;
weighted_graph g(n);
g.read_edges(m);
auto [X, E] = minimum_diameter_spanning_tree(g);
cout << X << '\n';
for(auto e: E) {
if (e != -1) {
cout << e << " ";
}
}
cout << "\n";
}
signed main() {
//freopen("input.txt", "r", stdin);
ios::sync_with_stdio(0);
cin.tie(0);
int t = 1;
//cin >> t;
while(t--) {
solve();
}
}
Traceback (most recent call last):
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj_resolve/resolver.py", line 181, in resolve
bundled_code = language.bundle(path, basedir=basedir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus.py", line 252, in bundle
bundler.update(path)
File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus_bundle.py", line 327, in update
assert len(lines) == len(uncommented_lines)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError
| Env | Name | Status | Elapsed | Memory |
|---|---|---|---|---|
| g++ | example_00 |
|
5 ms | 4 MB |
| g++ | example_01 |
|
4 ms | 4 MB |
| g++ | example_02 |
|
4 ms | 4 MB |
| g++ | example_03 |
|
4 ms | 4 MB |
| g++ | max_random_00 |
|
407 ms | 4 MB |
| g++ | max_random_01 |
|
404 ms | 4 MB |
| g++ | max_random_02 |
|
402 ms | 4 MB |
| g++ | max_random_03 |
|
391 ms | 4 MB |
| g++ | max_random_04 |
|
386 ms | 4 MB |
| g++ | random_00 |
|
79 ms | 4 MB |
| g++ | random_01 |
|
15 ms | 4 MB |
| g++ | random_02 |
|
8 ms | 4 MB |
| g++ | random_03 |
|
178 ms | 4 MB |
| g++ | random_04 |
|
52 ms | 4 MB |
| g++ | small_00 |
|
78 ms | 4 MB |
| g++ | small_01 |
|
15 ms | 4 MB |
| g++ | small_02 |
|
8 ms | 4 MB |
| g++ | small_03 |
|
14 ms | 4 MB |
| g++ | small_04 |
|
51 ms | 4 MB |
| g++ | small_c01_00 |
|
56 ms | 4 MB |
| g++ | small_c01_01 |
|
8 ms | 4 MB |
| g++ | small_c01_02 |
|
5 ms | 4 MB |
| g++ | small_c01_03 |
|
8 ms | 4 MB |
| g++ | small_c01_04 |
|
33 ms | 4 MB |
| g++ | star_00 |
|
322 ms | 4 MB |