시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 512 MB 101 58 37 61.667%

문제

길이가 N인 수열 A1, A2, ..., AN이 주어진다. 이때, 다음 쿼리를 수행하는 프로그램을 작성하시오.

  • i j : Ai, Ai+1, ..., Aj에서 가장 큰 연속합을 출력한다. (1 ≤ i ≤ j ≤ N)

수열의 인덱스는 1부터 시작한다.

연속합은 연속된 몇 개의 수를 선택해서 구할 수 있는 합 중 가장 큰 합이며, 수는 한 개 이상 선택해야 한다.

입력

첫째 줄에 수열의 크기 N이 주어진다. (1 ≤ N ≤ 100,000)

둘째 줄에는 A1, A2, ..., AN이 주어진다. (-1,000 ≤ Ai ≤ 1,000)

셋째 줄에는 쿼리의 개수 M이 주어진다. (1 ≤ M ≤ 100,000)

넷째 줄부터 M개의 줄에는 쿼리가 주어진다.

출력

쿼리의 정답을 한 줄에 하나씩 순서대로 출력한다.

예제 입력 1

10
10 -4 3 1 5 6 -35 12 21 -1
10
1 1
3 4
1 6
2 6
6 6
7 7
8 9
8 10
1 10
5 8

예제 출력 1

10
4
21
15
6
-35
33
33
33
12

출처