Tiết kiệm
Xem dạng PDFTiết kiệm
Nhóm của An có ~M~ bạn 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 riêng.
Trong ~N~ ngày tới, vào ngày thứ ~i~, mỗi bạn sẽ có cùng một khoản thu nhập là ~a_i~. Để đảm bảo chi phí sinh hoạt và các nhu cầu cá nhân khác, nhóm thống nhất rằng mỗi bạn chỉ tiết kiệm vào các ngày chẵn hoặc chỉ tiết kiệm vào các ngày lẻ. Ngày đầu tiên được đánh số là ngày ~1~.
Với mỗi bạn, hãy xác định số ngày ít nhất tính từ ngày đầu tiên để số tiền tiết kiệm đạt ít nhất mục tiêu của bạn. Mỗi bạn được tự chọn chỉ tiết kiệm vào ngày chẵn hoặc chỉ tiết kiệm vào ngày lẻ.
Dữ liệu vào (Input)
Đọc từ tệp văn bản TKIEM.INP:
- Dòng đầu gồm hai số nguyên ~N~ và ~M~.
- Dòng thứ hai gồm ~N~ số nguyên ~a_i~, là khoản thu nhập của mỗi bạn vào ngày thứ ~i~.
- ~M~ dòng tiếp theo, mỗi dòng gồm một số nguyên dương là mục tiêu tiết kiệm của một bạn.
Kết quả (Output)
Ghi vào tệp văn bản TKIEM.OUT ~M~ dòng. Mỗi dòng ghi số ngày ít nhất để bạn tương ứng đạt mục tiêu. Nếu sau ~N~ ngày vẫn không thể tích lũy đủ tiền thì ghi -1.
Ví dụ
TKIEM.INP
7 3
3 5 3 4 1 2 1
6
8
12
TKIEM.OUT
3
4
-1
Giải thích:
- Với mục tiêu ~6~, chọn các ngày lẻ 1 và 3, nhận được ~3 + 3 = 6~, nên cần 3 ngày.
- Với mục tiêu ~8~, chọn các ngày chẵn 2 và 4, nhận được ~5 + 4 = 9~, nên cần 4 ngày.
- Với mục tiêu ~12~, không thể đạt được sau 7 ngày dù chọn các ngày chẵn hay các ngày lẻ.
Giới hạn
- ~1 ≤ N ≤ 2 × 10^5~.
- ~1 ≤ M ≤ 10^5~.
- ~1 ≤ a_i ≤ 10^6~ với ~1 ≤ i ≤ N~.
- Mỗi mục tiêu là số nguyên dương không vượt quá ~10^7~.