Chia nhóm bạn bè
Xem dạng PDFMô tả và yêu cầu
Có N người (đánh số từ 0 đến N-1), với N≤20. Một số cặp người là bạn thân với
nhau. Ta muốn chia tất cả N người thành nhiều nhóm, sao cho trong mỗi nhóm: mọi
người trong nhóm đều là bạn với nhau .
Yêu cầu: Hãy tính số cách chia nhóm thỏa mãn điều kiện trên.
Dữ liệu vào
Dòng 1: Số nguyên N.
Dòng 2: Số nguyên M – số cặp bạn thân.
M dòng tiếp theo: mỗi dòng chứa 2 số u,v (0 ≤ u, v < N, u ≠ v), biểu thị rằng
người u và v là bạn thân.
Kết quả: Một số nguyên duy nhất: số cách chia nhóm hợp lệ.
Ví dụ 1:
INPUT OUTPUT Giải thích
3 5 Có 3 người, và tất cả đều là bạn với
3 nhau.
0 1 Các cách chia:
1 2 1. {0,1,2} (một nhóm duy nhất)
0 2 2. {0,1}, {2}
3. {0,2}, {1}
4. {1,2}, {0}
5. {0}, {1}, {2}
Tổng cộng: 5 cách.
Ví dụ 2:
INPUT OUTPUT Giải thích
4 4 Người 0 và 1 là bạn, người 2 và 3
2 là bạn. Không có mối quan hệ nào
0 1 khác.
2 3 Các cách chia:
1. {0,1}, {2,3}
2. {0,1}, {2}, {3}
3. {0}, {1}, {2,3}
4. {0}, {1}, {2}, {3}
Tổng cộng: 4 cách.
Bình luận