Point: 100.0
Time limit: 1.0s
Memory limit: 128 M
Input: stdin
Output: stdout
Author:  
Problem type
Ngôn ngữ cho phép
C, C#, C++, Java, Pascal, Python, Text

Cho dãy số nguyên A = (\(a_1, a_2, ..., a_n\)) (\(1 ≤ n ≤ 10^6, -10^6 ≤ a_i ≤ 10^6\)).

Yêu cầu

Hãy tìm một đoạn dài nhất gồm các phần tử liên tiếp trong dãy A: (\(a_L, ..., a_H\)) có tổng bằng 0

Dữ liệu

• Dòng 1: Chứa số n

• Dòng 2: Chứa \(n\) số \(a_1, a_2, ..., a_n\) theo đúng thứ tự cách nhau ít nhất một dấu cách

Dữ liệu vào luôn được cho hợp lý để tồn tại một đoạn các phần tử liên tiếp trong dãy A có tổng bằng \(0\).

Kết quả

• Chỉ gồm một dòng ghi hai số và cách nhau ít nhất một dấu cách

Ví Dụ

INPUT

9
2 7 5 -3 -2 4 -9 -2 1

OUTPUT

2 8

Ràng buộc:

• Subtask1: 30% số test đầu tiên tương ứng \(1 ≤ n ≤ 500\)

• Subtask2: 30% số test tiếp theo tương ứng \(501 ≤ n ≤ 5000\)

• Subtask3: 20% số test tiếp theo tương ứng \(5001 ≤ n ≤ 10^5\)

• Subtask4: 20% số test cuối cùng tương ứng với \(10^5 < n ≤ 10^6\)\(-1 ≤ a_i ≤ 1\)