Cuộc họp hiệu quả
Đề bài
Mô tả
Một cuộc họp có đúng người tham dự, đánh số từ đến . Tại bất kỳ thời điểm nào, hai người bất kỳ có thể tách ra nói chuyện riêng với nhau. Cùng một cặp người có thể nói chuyện với nhau nhiều lần tuỳ ý.
Mỗi người có một mức độ cởi mở giới hạn. Mức độ cởi mở của người thứ là số nguyên không âm : sau đúng lần nói chuyện, người này rời khỏi cuộc họp và không nói chuyện với ai nữa. Nếu thì người thứ rời đi ngay khi cuộc họp bắt đầu.
Cuộc họp được xem là hiệu quả nhất khi tổng số lần nói chuyện diễn ra là lớn nhất có thể.
Cho mảng , hãy xác định những ai nói chuyện với ai để tổng số lần nói chuyện là lớn nhất.
Dữ liệu vào
- Dòng đầu chứa số nguyên là số bộ dữ liệu.
- Với mỗi bộ dữ liệu:
- Dòng đầu chứa số nguyên là số người dự họp.
- Dòng thứ hai chứa số nguyên là mức độ cởi mở của từng người.
Dữ liệu ra
Với mỗi bộ dữ liệu, in ra:
- Dòng đầu chứa số là số lần nói chuyện tối đa có thể diễn ra.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên và (, ) là số hiệu hai người tham gia lần nói chuyện đó.
Nếu có nhiều đáp án, in ra đáp án nào cũng được.
Ràng buộc
- Tổng trên tất cả các bộ dữ liệu không vượt quá .
- Tổng tất cả các trên tất cả các bộ dữ liệu không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 2 2 3 3 1 2 3 4 1 2 3 4 3 0 0 2 |
2 2 1 2 1 3 3 2 3 1 2 3 5 4 3 4 2 3 4 1 2 3 4 0 |
Bộ 1: người 1 chỉ chịu được 2 lần nên tối đa 2 lần nói chuyện, người 2 còn dư 1 lượt nhưng không còn ai để nói. Bộ 4: chỉ người 3 còn lượt, không có bạn nói chuyện nên đáp án là 0. |
| 4 2 6 2 3 0 0 2 5 8 2 0 1 1 5 0 1 0 0 6 |
2 1 2 1 2 0 4 1 2 1 2 1 4 1 5 1 5 2 |
Bộ 1: người 2 là nút thắt, chỉ 2 lần. Bộ 3: người 1 quá "trội" () nên số lần bị chặn bởi tổng của những người còn lại là 4. |
Bình luận