Giải sách bài tập Tin học 11 định hướng Khoa học máy tính Cánh diều bài 7: Lập trình giải bài toán tìm kiếm

Hướng dẫn giải bài 7: Lập trình giải bài toán tìm kiếm SBT Tin học 11 định hướng Khoa học máy tính Cánh diều mới. Đây là sách bài tập nằm trong bộ sách "Chân trời sáng tạo" được biên soạn theo chương trình đổi mới của Bộ giáo dục. Hi vọng, với cách hướng dẫn cụ thể và giải chi tiết học sinh sẽ nắm bài học tốt hơn.

Fcs26. Theo em, tại sao em không thể áp dụng thuật toán tìm kiếm nhị phân trên một dãy chưa được sắp xếp theo thứ tự? 

Hướng dẫn trả lời:

Với một dãy chưa sắp xếp thứ tự, ta không có đủ cơ sở để loại bỏ một nửa dãy số ra khỏi phạm vi tìm kiếm sau khi so sánh phần tử giữa với giá trị x cần tìm.

Fs27. Em hãy chỉ ra một trường hợp mà thuật toán tìm kiếm tuần tự cho ra kết quả nhanh hơn thuật toán tìm kiếm nhị phân.

Hướng dẫn trả lời:

Với dãy a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] và khóa x = 1, thuật toán tìm kiếm tuần tự chỉ mất một lượt so sánh để tìm ra x trong dãy a, còn thuật toán tìm kiếm nhị phân phải mất ba lần chia đôi dãy mới thu hẹp được phạm vi tìm kiếm về phần tử 1 ở vị trí ngoài cùng bên trái của a.

Fcs28. Trong tiết Vật lý, An thực hành đo hiệu điện thế trong đoạn mạch song song. Theo lí thuyết, đáp án đo được phải bằng đúng x. An đã ghi lại kết quả của n lần đo, chính là dãy số a0,a1,a2,…,an-1. Kết quả được coi là chính xác nếu sai số tương đối không vượt quá 5%. An cần tính xem đã đo chính xác được bao nhiêu lần để xem thử dụng cụ thực hành của nhà trường còn tốt không? 

Dữ liệu: Nhập từ thiết bị vào chuẩn:

  • Dòng đầu tiên chứa số nguyên dương n và số thực dương x

  • Dòng tiếp theo chứa n số thực dương a0,a1,a2,…,an-1. (dữ liệu được cho có tối đa hai chữ số ở phần thập phân).

Kết quả: Hiển thị ở thiết bị ra chuẩn một số nguyên duy nhất là số lượng kết quả đo chính xác.

Ví dụ:

Input

Output

5  100

95  97  103  105.01  94.98

3

Hướng dẫn trả lời:

Fcs29. Xét bài toán: Một hàng dọc gồm n bạn học sinh xếp theo thứ tự từ thấp đến cao, bạn thứ i (0≤i≤n-1) có chiều cao là hi(cm). Em hãy viết chương trình, với độ phức tạp O(nn),    sử dụng thuật toán tìm kiếm nhị phân để tính số cách chọn một cặp học sinh trong hàng sao cho chênh lệch chiều cao của hai bạn ấy bằng đúng giá trị d (cm) cho trước.

Dữ liệu: Nhập từ thiết bị vào chuẩn:

  • Dòng đầu tiên chứa một dãy số nguyên dương h0,h1,…,hn-1 với đảm bảo hi <hi+10≤i≤n-1.

  • Dòng thứ hai chứa một số nguyên dương d

Kết quả: Hiển thị ở thiết bị ra chuẩn một số nguyên là số lượng cặp chỉ số (i,j) để hj-hi=d (0≤i<j≤n-1).

Ví dụ:

Input

Output

153  158  162  167  176

5

2

Hướng dẫn trả lời:

Fcs30. Bản đồ gene

Các nhà khoa học vừa phát hiện ra bản đồ gene của một loài sinh vật trên Trái Đất có nguồn gốc từ rất lâu về trước (niên đại được xác định dựa trên các dấu vết khảo cổ học). Chuỗi gene di truyền của nó được biểu diễn bởi xâu kí tự S (chỉ gồm các kí tự A..Z). Nhằm đánh giá, nghiên cứu nó, họ muốn xem thử nó có đặc tính T hay không. T cũng được biểu diễn dưới dạng một xâu kí tự (với các kí tự A.Z), tương ứng với một đoạn gene. Người ta cho rằng, loại sinh vật này có tính chất T nói trên nếu chuỗi biểu diễn của T là một chuỗi con của S. Tức là, nếu ta lấy ra các kí tự liên tiếp của S tại vị trí nào đó thì có được T. Em hãy lập trình giải quyết bài toán trên. 

Dữ liệu: Nhập từ thiết bị vào chuẩn:

  • Dòng đầu tiên chứa xâu S.

  • Dòng thứ hai chứa xâu T. 

Kết quả: Hiển thị ở thiết bị ra chuẩn các số nguyên là những vị trí mà ta tìm thấy được T ở trong S.

Ví dụ:

Input

Output

AXCGAXTGAXUUAZ

AX

1  5  9

Hướng dẫn trả lời:

Tìm kiếm google: Giải sách bài tập Tin học 11 định hướng Khoa học máy tính Cánh diều mới, Giải SBT Tin học 11 định hướng Khoa học máy tính Cánh diều bài 7, Giải sách bài tập Tin học 11 định hướng Khoa học máy tính Cánh diều bài 7: Lập trình giải bài toán tìm kiếm

Xem thêm các môn học

Giải SBT tin học 11 định hướng Khoa học máy tính cánh diều


Copyright @2024 - Designed by baivan.net