trang chủ / bài tập / painttree

Tô màu cây

Đề bài

Mô tả

Cho một cây có trọng số gồm n đỉnh. Cạnh thứ i nối hai đỉnh uivi, có trọng số wi.

Một cách tô màu k của cây là việc gán cho mỗi đỉnh đúng k màu, sao cho mỗi màu được dùng ở nhiều nhất hai đỉnh. Bạn có vô hạn màu để sử dụng.

Một cạnh được gọi là bão hòa nếu hai đầu mút của nó có chung ít nhất một màu (tồn tại một màu được gán cho cả hai đỉnh).

Giá trị của một cách tô màu k là tổng trọng số của các cạnh bão hòa.

Hãy tính giá trị lớn nhất có thể của một cách tô màu k của cây đã cho.

Bạn phải trả lời q truy vấn độc lập.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên q, số lượng truy vấn.
  • Với mỗi truy vấn:
    • Dòng đầu chứa hai số nguyên nk, số đỉnh của cây và số màu gán cho mỗi đỉnh.
    • n1 dòng tiếp theo, mỗi dòng chứa ba số nguyên ui, vi, wi, mô tả một cạnh.

Dữ liệu đảm bảo các cạnh tạo thành một cây.

Dữ liệu ra

Với mỗi truy vấn, in ra một số nguyên là giá trị lớn nhất của cách tô màu k.

Ràng buộc

  • 1q5·105
  • 1n,k5·105
  • 1ui,vin, uivi
  • 1wi105
  • Tổng của tất cả n trên mọi truy vấn không vượt quá 5·105.

Ví dụ

Input Output Giải thích
2
4 1
1 2 5
3 1 2
3 4 3
7 2
1 2 5
1 3 4
1 4 2
2 5 1
2 6 2
4 7 3
8
14
Truy vấn 1 (k=1): tô màu (1), (1), (2), (2). Cạnh 1 (trọng số 5) và cạnh 3 (trọng số 3) bão hòa, tổng =8.
Truy vấn 2 (k=2): chọn được các cạnh trọng số 5, 4, 2, 3, tổng =14.
1
2 5
1 2 7
7 Chỉ có một cạnh; với k1 luôn có thể cho hai đỉnh chung một màu nên cạnh bão hòa, giá trị =7.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0