Chia Đội
Đề bài
Mô tả
Có học sinh muốn chia thành hai đội để chơi bóng đá. Hai đội phải có số người bằng nhau.
Trong nhóm học sinh này có những cặp "kẻ thù không đội trời chung". Mỗi học sinh có nhiều nhất hai kẻ thù. Quan hệ thù địch là đối xứng: nếu học sinh là kẻ thù của thì cũng là kẻ thù của .
Khi chia đội, hai kẻ thù không được ở chung một đội. Nếu không thể chia thỏa mãn điều kiện trên, một số học sinh sẽ phải ngồi ngoài (ngồi dự bị).
Hãy xác định số học sinh ít nhất phải cho ngồi dự bị để có thể tạo thành hai đội như mô tả và bắt đầu trận đấu.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và — số học sinh và số cặp kẻ thù.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên và — chỉ số của hai học sinh là kẻ thù của nhau. Mỗi cặp kẻ thù xuất hiện đúng một lần trong danh sách.
Dữ liệu ra
In ra một số nguyên duy nhất — số học sinh ít nhất phải cho ngồi dự bị.
Ràng buộc
- ,
- ,
- Mỗi học sinh có không quá hai kẻ thù.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 4 1 2 2 4 5 3 1 4 |
1 | Các học sinh 1, 2, 4 tạo thành một vòng (1-2-4-1) gồm 3 người. Vòng lẻ này không thể chia làm hai phía nên phải có một người ngồi ngoài. Sau khi loại một người, còn lại 4 người chia đều hai đội mỗi đội 2 người. |
| 6 2 1 4 3 4 |
0 | Quan hệ thù địch tạo thành một đường 1-4-3. Có thể xếp thành đội {1, 3, ...} và {4, ...}; tổng 6 người chia đều, không ai phải ngồi ngoài. |
| 6 6 1 2 2 3 3 1 4 5 5 6 6 4 |
2 | Hai vòng tam giác (1-2-3) và (4-5-6), mỗi vòng lẻ buộc loại một người. Sau khi loại 2 người, còn 4 người chia đều hai đội. |
Bình luận