trang chủ / đề bài / gr11_inmst

Đường dây quan trọng

Đề bài

Mô tả

Một mạng điện có n trạm đánh số từ 1 đến n và m phương án kéo đường dây; đường dây thứ i nối trạm ui với trạm vi với chi phí wi. Biết rằng nếu kéo tất cả các đường dây thì mọi trạm đều liên thông với nhau.

Công ty điện lực sẽ chọn ra một tập đường dây sao cho mọi trạm liên thông với nhau và tổng chi phí là nhỏ nhất (gọi là một phương án tối ưu). Có thể có nhiều phương án tối ưu khác nhau. Với mỗi đường dây, hãy cho biết:

  • ALL nếu đường dây đó có mặt trong mọi phương án tối ưu;
  • SOME nếu nó có mặt trong ít nhất một phương án tối ưu nhưng không phải tất cả;
  • NONE nếu nó không có mặt trong phương án tối ưu nào.

Có thể có nhiều đường dây nối cùng một cặp trạm.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên n, m.
  • m dòng tiếp theo, dòng thứ i chứa ba số nguyên ui,vi,wi (ui≠vi).

Dữ liệu ra

In ra m dòng, dòng thứ i là ALL, SOME hoặc NONE tương ứng với đường dây thứ i.

Ràng buộc

  • 2≤n≤5·104
  • n−1≤m≤105
  • 1≤ui,vi≤n, ui≠vi
  • 1≤wi≤109
  • Đồ thị gồm tất cả các đường dây là liên thông.

Ví dụ

Input Output Giải thích
4 5
1 2 1
2 3 2
3 4 2
4 2 2
1 4 3
ALL
SOME
SOME
SOME
NONE
Đường dây 1−2 rẻ nhất, luôn được chọn. Ba đường dây chi phí 2 tạo thành chu trình 2−3−4, mỗi phương án tối ưu chọn hai trong ba đường. Đường dây 1−4 không bao giờ cần.
3 4
1 2 5
1 2 5
2 3 5
1 3 7
SOME
SOME
ALL
NONE
Hai đường dây 1−2 thay thế được cho nhau; đường dây 2−3 là cách rẻ nhất duy nhất để nối trạm 3.

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