Bài 5. Tổng lớn nhất (TS10 Đắk Lắk 2021)
Xem PDF
Điểm:
1400 (p)
Thời gian:
1.0s
Bộ nhớ:
512M
Input:
bàn phím
Output:
màn hình
Cho dãy số nguyên \(A = (a_1, a_2, \dots, a_n)\). Một dãy con của dãy \(A\) được tạo ra bằng cách xóa đi một số phần tử của dãy \(A\) (có thể không xóa phần tử nào) và giữ nguyên thứ tự các phần tử còn lại.
Yêu cầu: Hãy tìm một dãy con của dãy \(A\) sao cho tổng các phần tử của dãy con đó là lớn nhất, với điều kiện trong dãy con không có hai phần tử nào đứng cạnh nhau trong dãy \(A\) ban đầu.
Input
- Dòng đầu tiên chứa số nguyên dương \(n\) (\(n \le 10^6\)).
- Dòng thứ hai chứa \(n\) số nguyên \(a_1, a_2, \dots, a_n\) (\(|a_i| \le 10^9\)).
Output
- Một số nguyên duy nhất là tổng lớn nhất tìm được.
Example
Test 1
Input
5
-2 5 3 1 6
Output
11
Note
Dãy con thỏa mãn điều kiện và có tổng lớn nhất là \((5, 6)\) với tổng bằng \(11\). Lưu ý rằng mặc dù tổng của dãy con \((5, 3, 6)\) lớn hơn nhưng không thỏa mãn điều kiện vì phần tử \(5\) và \(3\) đứng cạnh nhau trong dãy \(A\).
Scoring
- Có \(60\%\) số test ứng với \(60\%\) số điểm của bài có \(n \le 10^3\).
- Có \(40\%\) số test còn lại ứng với \(40\%\) số điểm của bài có \(n \le 10^6\).
Bình luận (1)