HỘI CÁC TRƯỜNG THPT CHUYÊN KHU VỰC DUYÊN HẢI, ĐỒNG BẰNG BẮC BỘ KỲ THI CHỌN HỌC SINH GIỎI LẦN THỨ XII MÔN THI: TIN HỌC – KHỐI 11 Ngày thi 14/07/2022 (Hướng dẫn thuật tốn gồm có 02 trang) HƯỚNG DẪN THUẬT TOÁN ĐỀ THI ĐỀ XUẤT Bài (6 điểm) Xâu Sử dụng Quy hoạch động: - Gọi mảng số kí tự đến từ đỉnh (1, - Bạn quy hoạch động xếp topo Bạn sử dụng để mô tả số lượng cạnh kết thúc Khởi tạo với tất hàng đợi - Khi hàng đợi không rỗng thực bước sau: o Lấy đỉnh đầu hàng đợi o Lặp lại tất cạnh kết thúc đỉnh Khi để tính cần tính với Cuối giảm Nếu ta thêm điểm vào hàng đợi o Biến đếm tăng lên - Khi đồ thị khơng có chu trình hàng đợi rỗng với Khi đáp án Nếu đồ thị có chu trình khơng thể , ta in - Độ phức tạp: Bài (7điểm) Thời gian để người có sức mạnh tiêu diệt quái vật có lượng máu H Tương tự để quái vật có sức mạnh tiêu diệt người có lượng máu Ta cần người tiêu diệt quái vật trước Vậy người đánh bại quái vật Sub1: Ta thuê người nhóm, ta chuẩn bị biến lấy tất Với quái vật , Nếu Độ phức tạp: Sub2: Vì nhỏ nên ta cần xét trường hợp Với quái vật , ta duyệt nhóm chọn người nhóm thỏa mãn Lúc sức mạnh nhóm Nếu Thì ta lấy lượng tiền bỏ Độ phức tạp: Sub3: Với sub này, truy vấn ta cần dùng thuật toán đủ nhanh chạy Ở tơi đề xuất thuật tốn tìm kiếm nhị phân quy hoạch động Gọi số sức mạnh nhóm quái vật Gọi lượng lớn đạt bỏ đồng Với đội , ta khởi tạo Đoạn công thức truy hồi ta làm sau: for (int i = 1; i