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
dilip23: 2019-05-24 14:46:52

I am also getting TLE, but my solution is in c++.
Can anyone help me

johaer_wasif: 2019-05-23 18:42:51

If you are using int then it will overflow so use long long.

Last edit: 2019-05-23 18:43:26
hetp111: 2019-05-22 22:33:48

Braingasm..!

akashbhalotia: 2019-05-17 16:54:30

They have fixed the Java time limit. Now it will work.

tarungupta: 2019-04-25 20:48:36

A must do hard problem. Learned a lot.

pawan_asipu: 2019-04-11 15:24:16

http://e-maxx.ru/algo/segment_tree
is useful

Last edit: 2019-04-11 15:24:40
md_meraj1319: 2019-03-30 07:15:12

trishala_naman-
in this problem find max value then why we add -ve values?

akshita09: 2019-03-22 12:51:33

i am getting TLE in java

divyansh_15: 2019-03-22 10:04:43

Any JAVA CODE will never get AC. SPOJ IS NOT FOR JAVA PROGRAMMERS. :(

md_meraj1319: 2019-03-19 18:42:38

Last edit: 2019-03-19 18:43:34

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