Với giải Câu Fcs40 trang 61 SBT Tin học 11 Cánh diều chi tiết trong Bài 9: Lập trình sắp xếp nhanh giúp học sinh dễ dàng xem và so sánh lời giải từ đó biết cách làm bài tập trong SBT Tin học 11. Mời các bạn đón xem:
Giải SBT Tin học 11 Bài 9: Lập trình sắp xếp nhanh
Hãy lập trình để xác định xem có bao nhiêu nhân viên vắng không phép và liệt kê ra các nhân viên đó theo thứ tự số buổi vắng không phép giảm dần.
Dữ liệu: Nhập từ thiết bị vào chuẩn:
• Dòng đầu tiên chứa hai số nguyên dương n, m.
• Dòng thứ hai chứa n số nguyên b[i] là số ngày đi làm của nhân viên có số hiệu là i (các nhân viên được đánh số 1, 2, 3,..., ).
m dòng cuối cùng, mỗi dòng chứa thông tin dưới dạng “a d” tức là người a xin nghỉ phép vào ngày d (1 <aŚn, 1<d<30) (giả sử tháng đang hỏi có 30 ngày). Dữ liệu vào đảm bảo trong cùng một ngày, mỗi nhân viên chỉ xin phép tối đa một lần.
Kết quả: Hiển thị ở thiết bị ra chuẩn:
• Dòng đầu chứa số lượng nhân viên đã vắng không phép.
• Dòng thứ hai chứa các chỉ số của các nhân viên vắng (được sắp xếp theo số lượng buổi vắng không phép giảm dần).
Lời giải:
- Trước tiên, cần phải tính số ngày nghỉ không phép, rồi sau đó ta thực hiện sắp xếp sau.
Số ngày nghỉ chính là 30 trừ cho số ngày đi làm. Sau đó với mỗi lần xin phép, em trừ đi, như vậy sẽ có được số ngày vắng không phép.
- Vì cần in ra số hiệu của các nhân viên nên em sắp xếp trên chỉ số thứ tự, thay vì sắp xếp trên giá trị.
Xem thêm lời giải Sách bài tập Tin học lớp 11 Cánh diều hay, chi tiết khác:
Xem thêm các bài giải SBT Tin học lớp 11 Cánh diều hay, chi tiết khác: