HSG9 Cần Thơ 2026 - Tiết kiệm
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Nhóm của An có ~M~ bạn đang cùng nhau thực hiện tiết kiệm tiền để chuẩn bị cho các kế hoạch trong tương lai. Mỗi bạn có một mục tiêu tiết kiệm của riêng mình. Theo tính toán của An, trong ~N~ ngày tới, ngày thứ ~i~ (~1 \le i \le N~) mỗi bạn sẽ có cùng một khoản thu nhập là ~a_i~. Tuy nhiên, để đảm bảo chi phí sinh hoạt và các nhu cầu cá nhân khác, nhóm bạn tự đặt ra một quy tắc nghiêm ngặt: mỗi bạn sẽ thực hiện tiết kiệm vào chỉ những ngày chẵn hoặc chỉ những ngày lẻ (ngày đầu tiên là ngày 1).
Yêu cầu: Với mỗi bạn, hãy xác định thời gian sớm nhất (số ngày ít nhất tính từ ngày đầu tiên) để có thể tích lũy đạt (bằng hoặc nhiều hơn) số tiền theo mục tiêu mà bản thân đã đề ra.
Input
- Dòng đầu gồm hai số nguyên ~N~ và ~M~ (~1 \le N \le 2 \times 10^5~, ~1 \le M \le 10^5~);
- Dòng thứ hai gồm ~N~ số nguyên ~a_i~ cho biết số tiền thu nhập của mỗi bạn ở ngày thứ ~i~ (~1 \le a_i \le 10^6~; ~i=1..N~);
- ~M~ dòng tiếp theo, mỗi dòng gồm một số nguyên dương cho biết mục tiêu (số tiền) cần đạt được của mỗi bạn, các giá trị không vượt quá ~10^9~.
Output
Ghi ~M~ dòng, mỗi dòng ghi một số nguyên cho biết số ngày ít nhất để đạt mục tiêu của mỗi bạn. Nếu với ~N~ ngày mà bạn đó vẫn không thể tích lũy đủ, hãy ghi ra -1.
Sample Input 1
7 3
3 5 3 4 1 2 1
6
8
12
Sample Output 1
3
4
-1
Giải thích:
- Bạn thứ 1 đặt mục tiêu với số tiền là 6, bạn thực hiện tiết kiệm vào ngày thứ 1 và thứ 3 (ngày lẻ), được số tiền là ~3+3=6~, mất thời gian 3 ngày;
- Bạn thứ 2 đặt mục tiêu với số tiền là 8, bạn chọn tiết kiệm vào ngày thứ 2 và thứ 4 (ngày chẵn), được số tiền là ~5+4=9~, vượt mục tiêu đề ra, mất thời gian là 4 ngày;
- Bạn thứ 3 đặt mục tiêu với số tiền là 12, dù chọn tiết kiệm vào ngày chẵn hay ngày lẻ đều không thể đạt mục tiêu sau 7 ngày.
Subtasks
- 40% số test ứng với 40% số điểm có ~1 \le N, M \le 1000~;
- 60% số test ứng với 60% số điểm còn lại: Không có ràng buộc gì thêm.
Bình luận