Mô tả
Chú Ba đầu tư một mã cổ phiếu trên sàn HOSE và ghi lại biến động giá đóng cửa từng ngày. Mỗi ngày, ông ghi một con số thể hiện mức chênh lệch so với hôm trước: số dương nghĩa là giá tăng, số âm hoặc bằng không nghĩa là giá giảm hoặc đi ngang. Chú Ba muốn biết chuỗi ngày tăng trưởng liên tiếp dài nhất kéo dài bao nhiêu ngày, để xem đà tăng có thực sự mạnh hay không. Nhiệm vụ của bạn là cho trước một mảng số nguyên biểu diễn biến động giá theo ngày, hãy trả về độ dài chuỗi số dương liên tiếp dài nhất xuất hiện trong mảng. Nếu không có ngày nào tăng trưởng, kết quả là 0.
Đầu vào
Một mảng số nguyên changes gồm n phần tử, mỗi phần tử là biến động giá trong một ngày. Định dạng stdin cho ngôn ngữ biên dịch: dòng đầu chứa số nguyên n, dòng thứ hai chứa n số nguyên cách nhau bởi khoảng trắng.
Đầu ra
Trả về một số nguyên duy nhất là độ dài chuỗi số dương liên tiếp dài nhất. Với chế độ stdin-stdout, in số nguyên đó trên một dòng.
Ràng buộc
0 <= n <= 10^5- Mỗi phần tử
changes[i]là số nguyên thỏa mãn-10^9 <= changes[i] <= 10^9 - Độ phức tạp thời gian mục tiêu: O(n)
Ví dụ
Giả sử changes = [3, 5, -2, 7, 8, 4, -1, 6].
- Ngày 1 đến ngày 2: hai số dương đầu tiên
3, 5tạo chuỗi dài 2. - Ngày 3: số
-2ngắt quãng. - Ngày 4 đến ngày 6: ba số dương
7, 8, 4tạo chuỗi dài 3. - Ngày 7: số
-1ngắt quãng. - Ngày 8: số
6đứng một mình, chuỗi dài 1.
Chuỗi dài nhất là 3, vậy kết quả là 3.