DHBB 2023 - LQDDB - 10 - Dãy số
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
Cho một dãy số nguyên ~A~ gồm ~N~ phần tử ~a_1, a_2, \dots, a_N~. Gọi ~f(A)~ là tổng lớn nhất của một dãy con liên tiếp trong dãy ~A~.
Ví dụ, với ~A = [5, -1, 2, -3]~ thì ~f(A) = 5 + (-1) + 2 = 6~.
Yêu cầu: Cho một số nguyên ~x~, hãy chọn tối đa một dãy con liên tiếp của ~A~ và nhân mỗi phần tử trong dãy con đó với ~x~ sao cho ~f(A)~ đạt giá trị lớn nhất có thể.
Input
Dòng đầu tiên chứa hai số nguyên ~N, x~ ~(1 \le N; \lvert x \rvert \le 100)~;
Dòng thứ hai chứa ~N~ số nguyên ~a_1, a_2, \dots, a_N~ ~(\lvert a_i \rvert \le 100)~.
Output
Một số nguyên là giá trị lớn nhất có thể của ~f(A)~ sau khi thực hiện không quá một phép biến đổi.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~30\%~ | ~N \le 50~ |
| 2 | ~30\%~ | ~N \le 2000~ |
| 3 | ~40\%~ | ~N \le 3 \cdot 10^5~ |
Sample Input 1
5 2
5 -1 2 -3 2
Sample Output 1
12
Notes
Nhân các phần tử ~a_1, a_2, a_3~ với ~x~. Khi đó ~A = [10, -2, 4, -3, 2]~ và ~f(A) = 10 + (-2) + 4 = 12~.
Bình luận