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

hide comments
vipulvikram: 2018-10-01 05:16:53

please use long long .
I get wrong answer with int in test case 9.

chenz01: 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))

kalyanavuthu: 2018-09-05 19:02:24

Learnt a lot..:p

tanmay2904: 2018-08-20 19:18:51

TLE at test case 9 using Divide and conquer and fast I/O CPP14

bhagat_7283: 2018-08-19 07:41:07

scanf,printf and segment tree.....that's all u need fr this ques...

imsagartyagi: 2018-08-18 10:50:55

I Think 9th case has all the elements negative. It got me accepted.

dlp_302: 2018-08-15 19:57:09

learnt a lot...

nitishyadav169: 2018-08-13 22:29:22

iF aNYONE CAN get accepted in java.
then please tag us

codehead1997: 2018-08-02 15:41:47

If you are getting TLE at testcase #9 instead of copy pasting the code submit your code file.You will thank me later.

DOT: 2018-08-01 19:06:04

1. To people getting WA for #9, ensure while computing the best in a range, you also check the elements individually. I missed that.
2. long long is not needed. int is enough for handling this condition (|A[i]| ≤ 15007 , 1 ≤ N ≤ 50000). Max value you can make is 15007 * 50000, well within the int range.
3. First seven cases are very weak. I misunderstood the question completely and was printing the max element in [l, r] and got WA only at #8. :P
4. Segment tree seems to be much faster than square root decomposition for this question

Last edit: 2018-08-01 19:07:53

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