GSS1 - Can you answer these queries I

You are given a sequence A[1], A[2] ... A[N] . ( |A[i]| ≤ 15007 , 1 ≤ N ≤ 50000 ). A query is defined as follows:
Query(x, y) = Max { a[i] + a[i+1] + ... + a[j] ; x ≤ i ≤ j ≤ y }.
Given M queries, your program must output the results of these queries.

Input

  • The first line of the input file contains the integer N.
  • In the second line, N numbers follow.
  • The third line contains the integer M.
  • M lines follow, where line i contains 2 numbers xi and yi.

Output

Your program should output the results of the M queries, one query per line.

Example

Input:
3 
-1 2 3
1
1 2

Output:
2

Added by:Nguyen Dinh Tu
Date:2006-11-01
Time limit:1s
Source limit:5000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET

hide comments
2018-11-10 16:57:26
Wrong ans on test case 9!!!
2018-10-28 18:07:24
TestCase #9 is giving TLE for Java.
Any help for that.
Thanks in advance.

Last edit: 2018-10-28 18:09:57
2018-10-25 12:56:38
1. The question can be solved by using int. No need for long long
2. Make sure that the size of tree array is atleast 130000. Test case 9 gives wrong answer if array size is less than that for some reason.
2018-10-01 05:16:53
please use long long .
I get wrong answer with int in test case 9.
2018-09-13 00:03:44
Of course segment-tree is faster than square root decomposition(almost any time)
For segment-tree is O(n log n) and square root decomposition is O(n sqrt(n))
2018-09-05 19:02:24
Learnt a lot..:p
2018-08-19 07:41:07
scanf,printf and segment tree.....that's all u need fr this ques...
2018-08-18 10:50:55
I Think 9th case has all the elements negative. It got me accepted.
2018-08-15 19:57:09
learnt a lot...
2018-08-13 22:29:22
iF aNYONE CAN get accepted in java.
then please tag us
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.