trang chủ / đề bài / dhbb23_cbg_11_c

Chọn thành phố trung tâm

Đề bài

Mô tả

Đất nước Omega có N thành phố (đánh số từ 1 đến N) và M tuyến đường hai chiều nối giữa các thành phố này. Các tuyến đường không cắt nhau, tuyến đường thứ i nối giữa hai thành phố khác nhau ai và bi và có khoảng cách ci (với i=1,…,M). Hai thành phố có thể được nối bởi nhiều tuyến đường; khi đó đi theo tuyến nào cũng được. Khoảng cách giữa hai thành phố là tổng độ dài của đường đi ngắn nhất giữa chúng (khoảng cách từ một thành phố đến chính nó bằng 0).

Ông Piter vừa được bầu chọn làm tổng thống mới của Omega và kế hoạch đầu tiên của ông cho sự phát triển kinh tế là xây dựng các trung tâm kinh tế lớn tại các thành phố mà việc đi lại, giao thương buôn bán phải dễ dàng.

Trong rất nhiều tiêu chí chọn thành phố đặt các trung tâm kinh tế, ông Piter quyết định những thành phố được chọn phải có tổng khoảng cách đến các thành phố khác là nhỏ nhất.

Yêu cầu: Tìm các thành phố thỏa mãn quyết định của ông Piter.

Dữ liệu vào

  • Dòng đầu ghi hai số nguyên N và M (1≤N≤450; 0≤M≤105).
  • M dòng sau, dòng thứ i ghi ba số nguyên ai,bi,ci (1≤ai,bi≤N; ai≠bi; 1≤ci≤109).

Dữ liệu ra

Nếu tồn tại hai thành phố nào đó không có đường đi giữa chúng, ghi số duy nhất 0.

Ngược lại, ghi trên một dòng hai số: tổng khoảng cách nhỏ nhất từ một thành phố được chọn đến các thành phố khác, và số lượng thành phố được chọn (số thành phố đạt tổng nhỏ nhất đó).

Ràng buộc

  • 1≤N≤450, 0≤M≤105.
  • 1≤ai,bi≤N, ai≠bi.
  • 1≤ci≤109.

Subtasks

  • 30% số test: N≤102, M≤102.
  • 30% số test: N≤102, M≤105.
  • 40% số test: N≤450, M≤105.

Ví dụ

Input Output Giải thích
4 4
1 2 2
1 3 3
2 4 3
3 4 10
10 2 Tổng khoảng cách từ các thành phố 1,2,3,4 lần lượt là 2+3+5=10, 2+5+3=10, 3+5+8=16, 5+3+8=16. Hai thành phố 1 và 2 được chọn.
3 4
1 2 1
2 3 2
1 2 5
1 3 10
3 1 Thành phố 1 và 2 được nối bởi hai tuyến dài 1 và 5, đi theo tuyến dài 1. Khoảng cách: 1→2 là 1, 2→3 là 2, 1→3 là 3 (qua thành phố 2). Các tổng là 4,3,5, chỉ chọn thành phố 2.
3 1
1 2 4
0 Không có đường đi đến thành phố 3.
1 0 0 1 Chỉ có một thành phố, tổng khoảng cách bằng 0.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0