DHBB 2023 - LQDDB - 10 - Dãy số

Xem dạng PDF

Gửi bài giải

Điểm: 45,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong 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

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.