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

Cây xương rồng nhiều màu

Đề bài

Mô tả

Một cây xương rồng cạnh (edge cactus) là một đồ thị vô hướng liên thông, không có khuyên và không có cạnh song song, trong đó mỗi cạnh thuộc về nhiều nhất một chu trình.

Cho một cây xương rồng cạnh với n đỉnh và m cạnh, mỗi cạnh được tô một màu. Bạn cần xoá đi một số cạnh sao cho đồ thị còn lại trở thành một cây (liên thông và không có chu trình). Trong tất cả các cách xoá số cạnh ít nhất để đạt được điều đó, hãy tìm số màu khác nhau nhiều nhất có thể có trên các cạnh của cây thu được.

Vì mỗi cạnh thuộc nhiều nhất một chu trình, để biến đồ thị thành cây ta phải xoá đúng một cạnh khỏi mỗi chu trình (và giữ nguyên mọi cạnh không nằm trong chu trình nào). Bạn được tự do chọn xoá cạnh nào trong mỗi chu trình.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm: số đỉnh và số cạnh.
  • m dòng tiếp theo, mỗi dòng chứa ba số nguyên u, v, c: một cạnh nối hai đỉnh uv có màu c.

Đảm bảo đồ thị cho trước là một cây xương rồng cạnh.

Dữ liệu ra

In ra một số nguyên: số màu khác nhau nhiều nhất mà cây thu được có thể có.

Ràng buộc

  • 2n10000
  • 1u,vn, uv
  • 1cm

Ví dụ

Input Output Giải thích
4 4
1 2 4
2 3 1
3 4 2
4 2 3
3 Các đỉnh 2, 3, 4 tạo thành một chu trình (màu 1, 2, 3); cạnh 1-2 màu 4 là cầu. Phải xoá đúng 1 cạnh của chu trình, giữ lại 2 màu trong đó cùng với màu 4, được 3 màu.
7 9
1 2 1
2 3 4
3 1 5
1 4 5
4 5 2
5 1 6
1 6 4
6 7 6
7 1 3
6 Đồ thị có 3 chu trình; sau khi xoá 3 cạnh (mỗi chu trình một cạnh) có thể giữ lại được 6 màu khác nhau.

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