Vừa kết thúc kỳ thi nên Đức đã được giáo viên thưởng nóng, tuy nhiên vì giáo viên dạy Đức cũng là dân IT nên không dễ dàng cho Đức nhận được phần thưởng một cách đơn giản. Thể lệ trao thưởng như sau:
• Có 𝑛 món quà xếp thành một hàng ngang, các món quà có giá trị lần lượt là 𝑎1, 𝑎2, … , 𝑎𝑛 (các món quà có thể nhận giá trị âm là một hình phạt nếu Đức chọn sai).
• Đức được chọn bất kì món quà nào, hoặc không chọn, nhưng không được chọn quá 𝑘 món quà
liên tiếp.
Yêu cầu: Bạn hãy cùng Đức tính xem có thể chọn các món quà có tổng giá trị lớn nhất là bao nhiêu.
Input
• Dòng đầu ghi một số nguyên 𝑛 (𝑛 ≤ 10^5);
• Dòng thứ hai ghi 𝑛 số nguyên 𝑎1, 𝑎2, … , 𝑎𝑛(|𝑎𝑖| ≤ 10^9 , ∀𝑖 = 1,2, … , 𝑛) thể hiện giá trị của 𝑛 món quà.
• Dòng thứ 3 ghi số nguyên 𝑘.
Output
• In ra tổng giá trị các món quà lớn nhất mà bạn Đức có thể chọn.
Ràng buộc:
• Có 30% số test ứng với 30% số điểm thỏa mãn: 𝑘 = 1 và 𝑛 ≤ 20;
• 40% số test ứng với 40% số điểm thỏa mãn: 𝑘 = 2 và 𝑛 ≤ 20;
• 30% số test còn lại ứng với 30% số điểm thỏa mãn: 𝑘 = 2 và 𝑛 ≤ 10^5
Ví dụ 1
Input
5
6 9 1 3 5
2
Output
23
Giải thích:
Đức có thể chọn các món quà có giá trị là 6, 9, 3 và 5 có tổng bằng 23
Ví dụ 2
Input
5
6 9 1 -3 5
1
Output
14
Giải thích:
Đức có thể chọn các món quà có giá trị 9 và 5 có tổng bằng 14.
Chào mọi người, hôm nay làm đề gặp bài này mà chưa có bất kỳ ý tưởng nào để làm, nhờ mọi người giúp đỡ. Cảm ơn mọi người!