Giao Hai Matroid - Rừng Cây Đa Sắc Cực Đại (Colorful Forest)
Cho một đồ thị vô hướng G = (V, E) gồm N đỉnh và M cạnh. Mỗi cạnh ei = (ui, vi) được tô một màu nguyên dương ci.
Tiến độ của tôi ở bài này
Điểm được lưu vào tài khoản sau khi chấm bài.
Đang tải điểm của bạn…
Kiến thức và chủ đề
Kiến thức tiên quyết: Graphic Matroid, Partition Matroid, Augmenting Path in Matroid.
Nội dung đề bài
Mô tả bài toán
Cho một đồ thị vô hướng G = (V, E) gồm N đỉnh và M cạnh. Mỗi cạnh ei = (ui, vi) được tô một màu nguyên dương ci.
Một tập cạnh S ⊆ E được gọi là Rừng Cây Đa Sắc nếu thỏa mãn đồng thời hai điều kiện:
- Tập cạnh S không chứa chu trình vô hướng (tức là đồ thị con sinh bởi S là một rừng cây - Graphic Matroid).
- Không có hai cạnh nào trong S có cùng màu (tức là mỗi màu xuất hiện tối đa 1 lần - Partition Matroid).
Hãy tìm kích thước cực đại (số lượng cạnh tối đa) của một Rừng Cây Đa Sắc.
Quy ước nộp bài
- Chỉ cần viết một chương trình đọc
stdinvà in rastdout. Bài này không yêu cầu viết hàm. - Không dùng
coutđể in lời nhắc trước khi đọc dữ liệu. Lời nhắc sẽ lọt vàostdoutvà làm bài sai. - Chỉ in đúng nội dung ở mục Output. Không in thêm nhãn, dòng trống hay ký tự thừa.
- Output được so khớp từng ký tự, phân biệt chữ hoa/thường và dấu câu.
Input
- Dòng đầu chứa hai số nguyên N và M (2 ≤ N ≤ 100, 1 ≤ M ≤ 300).
- M dòng tiếp theo, dòng thứ i (1 ≤ i ≤ M) chứa ba số nguyên ui, vi, ci (1 ≤ ui, vi ≤ N, ui ≠ vi, 1 ≤ ci ≤ M).
Output
- In ra một số nguyên duy nhất là kích thước lớn nhất của tập cạnh thỏa mãn.
Ràng buộc
- Thời gian chạy tối đa: 1500ms.
- Giới hạn bộ nhớ: 256MB.
- Dữ liệu đầu vào tuân thủ đúng định dạng và miền giá trị được mô tả.
Ví dụ 1
Input
4 5
1 2 1
2 3 1
3 4 2
4 1 3
1 3 4Output
3Giải thích
Dữ liệu kiểm thử mẫu và kết quả thực thi theo yêu cầu.
Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.
Góp ý & báo lỗi bài tập
Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.
