TỔNG LỚN NHẤT

Cho một dãy số nguyên \(A\) gồm \(n\) phần tử \(a_{1},a_{2},\ldots,a_{N}.\) Gọi \(f(A)\) là giá trị của dãy con liên tiếp có tổng lớn nhất của dãy \(A.\) Ví dụ: \(A = (5, - 1,2, - 3) \rightarrow f(A) = 5 + ( - 1) + 2 = 6\).

Yêu cầu: Cho một số nguyên \(x,\) hãy tìm cách tăng mỗi phần tử trong tối đa một dãy con liên tiếp của dãy \(A\) lên \(x\) lần sao cho \(f(A)\) lớn nhất có thể.

Dữ liệu vào:

+ Dòng đầu tiên chứa số hai số nguyên \(n\)\(x\ \left( n \geq 1,|x| \leq 100 \right);\)

+ Dòng thứ hai chứa \(n\) số nguyên \(a_{1},a_{2},\ldots,a_{N}\ \left( \left| a_{i} \right| \leq 100 \right);\)

Kết quả: In ra kết quả bài toán là giá trị lớn nhất của \(f(A)\).

Ví dụ:

Input Output
5 2
5 -1 2 -3 2
12

Giải thích: Ta nhân \(a_{1}\) với \(x\), tức là \(a_{1} = a_{1} \times 2 = 5 \times 2 = 10.\) Sau đó thì \(A = (10, - 2,4, - 3,2) \rightarrow f(A) = 10 + ( - 2) + 4 = 12.\)

Giới hạn:

  • \(\left\lbrack \mathbf{30\%} \right\rbrack\mathbf{:N \leq 50;}\)

  • \(\left\lbrack \mathbf{30\%} \right\rbrack\mathbf{:N \leq 2000;}\)

  • \(\left\lbrack \mathbf{40\%} \right\rbrack\mathbf{:N \leq}\mathbf{3.10}^{\mathbf{5}}\mathbf{.}\)

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. npk1605 (4/9)
  2. kurotiso (4/7)
  3. tuythoi213 (4/6)
Trong 7 ngày
  1. nguyenanhvu (40/55)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38907

Lưu Hải Phong - 2020
[email protected]