Codeforces - 1433D - Districts Connection
★ Today's tune: https://youtu.be/QppXwgg7nC8 ★ Link: https://codeforces.com/problemset/problem/1433/D ★ Difficulty: 1200 ★ Tags: dfs ★ Tóm tắt (khuyến khích không nên đọc vì đọc xong sẽ không hiểu): Cho n đỉnh của đồ thị với các nhóm đỉnh khác nhau: đỉnh i được đánh số a[i] thì đỉnh i thuộc nhóm đỉnh a[i]. Yêu cầu dựng một đồ thị vô hướng liên thông có n - 1 cạnh (đồ thị này trở thành cây) từ các đỉnh đã cho và 2 đỉnh thuộc cùng một nhóm đỉnh không được nối trực tiếp với nhau. ★ Ý tưởng: vì 2 đỉnh thuộc cùng một nhóm không thể được nối trực tiếp -> ta sẽ nối bằng cách dùng 2 đỉnh trong 2 nhóm khác nhau và dfs để xây dựng tiếp đồ thị từ đỉnh đang xét cho đến khi tất cả các đỉnh đã được thăm hoặc không thể xây dựng thêm nữa. Đầu tiên ta sẽ dựng một đồ thị vô hướng có tối đa cạnh có thể có bằng cách nối từng đỉnh của một nhóm bất kỳ với từng đỉnh của một nhóm bất kỳ khác. Sau đó dùng dfs để xây dựng đồ thị theo đề bài. ★ Code: https://ide...