Một lớp học nhảy có n (n ≤ 10) bạn nam và n bạn nữ
Một lớp học nhảy có n (n ≤ 10) bạn nam và n bạn nữ. Bạn nam thứ i (0 ≤ i ≤ n-1) có chiều cao b(cm), bạn nữ thứ j (0 ≤ j ≤ n-1) có chiều cao g(cm). Trong một buổi học, thầy giáo muốn ghép các bạn nam với các bạn nữ tạo thành n đôi nhảy để trình diễn, mỗi đôi gồm một bạn nam và một bạn nữ mà chênh lệch chiều cao của hai bạn không vượt quá d (cm). Em hãy lập chương trình đếm số cách phép thỏa mãn, chương trình nhập vào số nguyên d cùng với hai dãy số b, b, ...,b và g, g,..., g sau đó đưa ra số cách ghép thoã mãn. Chạy thử nghiệm với các bộ dữ liệu ở Bảng 3.
Giải Chuyên đề Tin học 11 Bài 4: Thực hành tổng hợp kĩ thuật duyệt - Cánh diều
Vận dụng trang 63 Chuyên đề Tin học 11: Một lớp học nhảy có n (n ≤ 10) bạn nam và n bạn nữ. Bạn nam thứ i (0 ≤ i ≤ n-1) có chiều cao bi (cm), bạn nữ thứ j (0 ≤ j ≤ n-1) có chiều cao gj (cm). Trong một buổi học, thầy giáo muốn ghép các bạn nam với các bạn nữ tạo thành n đôi nhảy để trình diễn, mỗi đôi gồm một bạn nam và một bạn nữ mà chênh lệch chiều cao của hai bạn không vượt quá d (cm). Em hãy lập chương trình đếm số cách phép thỏa mãn, chương trình nhập vào số nguyên d cùng với hai dãy số b0, b1, ...,bn-1 và g0, g1,..., gn-1 sau đó đưa ra số cách ghép thoã mãn. Chạy thử nghiệm với các bộ dữ liệu ở Bảng 3.
Lời giải:
Sử dụng kĩ tuật quay lui để xây dựng tất cả các hoán vị của n phần tử, với mỗi hoán vị tương ứng với một cách ghép, kiểm tra và đếm.