Cho dãy số nguyên A gồm \(n\) số nguyên \((a_{1},\ a_{2},\ \ldots,\ a_{n})\). Một dãy con liên tiếp của A là một dãy gồm các phần tử liên tiếp nhau trong A.
Yêu cầu: Hãy tìm dãy con liên tiếp có tổng các phần tử lớn nhất.
Dữ liệu vào:
- Dòng đầu ghi số nguyên dương \(n\ (0 < n \leq \ 10^{6})\).
- Dòng thứ hai ghi \(n\) số nguyên \(a_{1},\ a_{2},\ldots,\ a_{n}\ (\left| a_{i} \right| \leq 10^{6},\ 1 \leq i \leq n)\), mỗi số cách nhau một khoảng trắng.
Dữ liệu ra:
- Dòng đầu ghi tổng lớn nhất tìm được.
- Dòng thứ 2 ghi ra các phần tử của dãy con liên tiếp tìm được (giữ nguyên theo thứ tự ban đầu trong A). Mỗi phần tử cách nhau một khoảng trắng. Nếu có nhiều dãy như thế thì ghi ra dãy xuất hiện đầu tiên.
Ví dụ:
daycon.inp | daycon.out | Giải thích |
---|---|---|
6 -2 3 -2 3 1 -2 |
5 3 -2 3 1 |
Trong các dãy con liên tiếp thì dãy gồm các phần tử: 3 -2 3 1 có tổng bằng 5 là lớn nhất |
Ràng buộc:
40% test với \(0 < n \leq 10^{2}\).
40% test với \(10^{2} < n \leq 10^{4}\).
20% test với \(10^{4} < n \leq 10^{6}.\)
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38907 |