Thông tin
Sau đây là lời giải của Kỳ thi Tin học trẻ bảng B tỉnh Bà Rịa - Vũng Tàu năm học 2014 - 2015.
Bạn đọc có thể nộp và chấm bài (test tự sinh) TẠI ĐÂY.
Chuẩn bị bởi team Logica, thuộc khuôn khổ dự án The Algitect (ALGI Project)
Cho một dãy số nguyên có phần tử . Người ta biểu diễn số nguyên đó trên trục hoành .
Yêu cầu: Hãy cho biết phải cần dùng ít nhất bao nhiêu đơn vị độ dài trên trục .
Dữ liệu đảm bảo:
Nhận xét
Nếu biểu diễn các điểm lên hệ trục hoành (), độ dài ít nhất cần dùng sẽ là độ chênh lệch giữa điểm có hoành độ nhỏ nhất và điểm có hoành độ lớn nhất.
BBài toán trở thành tính độ chênh lệch giữa điểm có hoành độ nhỏ nhất và điểm có hoành độ lớn nhất.
Chạy vòng lặp nhập vào hoành độ từng điểm, duy trì hai biến và lần lượt lưu hoành độ nhỏ nhất và lớn nhất.
Đáp án: .
Lưu ý: Khởi gán hai giá trị và là hoành độ của điểm đầu tiên hoặc bằng những giá trị vô cực.
Độ phức tạp thời gian: .
Cho học sinh và giá trị tiền thưởng.
thể hiện giá trị phần thưởng mà học sinh thứ sẽ nhận được.
Yêu cầu: Tìm cách phát thưởng sao cho số lượng học sinh nhận thưởng là nhiều nhất và tổng giá trị phần thưởng không vượt quá lượng dự trù.
Dữ liệu đảm bảo:
Nhận xét
Để tối ưu số học sinh nhận giải, nên ưu tiên cho các học sinh nhận ít giải thưởng.
Sắp xếp giá trị phần thưởng của các em học sinh theo thứ tự từ bé đến lớn.
Tức là sắp xếp mảng tăng dần.
Duyệt để tìm ra số lớn nhất thỏa mãn: và .
Đó cũng chính là đáp án của bài toán.
Độ phức tạp thời gian: .