Alternative Subsequence: The Extension

jisan047 BSMRSTU Home Quarantine C...
Limits 1s, 512 MB

Recall that the sequence b is a subsequence of the sequence a, if b can be derived from a by removing zero or more elements without changing the order of the remaining elements. For example, if a = [1, 2, 1, 3, 1, 2, 1], then possible subsequences of a are: [1, 1, 1, 1], [3] and [1, 2, 1, 3, 1, 2, 1], but not [3, 2, 3] and [1, 1, 1, 1, 2].

You are given a sequence a consisting of n non-zero elements.

Your task is to choose any alternating subsequence of the given sequence (i.e. the sign of each next element is the opposite from the sign of the current element, like positive-negative-positive and so on or negative-positive-negative and so on). Among all such subsequences, you have to choose one which has the maximum sum of elements.

In other words, your task is to find the maximum sum of elements of some alternating subsequence of any length (probably zero).

You have to answer t independent cases.


The first line of the input contains one integer t (1 ≤ t ≤ 104) — the number of test cases. Then t test cases follow.

The first line of the test case contains an integer n (1 ≤ n ≤ 2×104) — the number of elements in a.
The second line of the test case contains n integers (−109 ≤ ai ≤ 109, ai ≠ 0), where ai is the ith element of a.

It is guaranteed that the sum of n over all test cases does not exceed 2×106 (∑n ≤ 2×106).


For each test case, print the answer — the maximum sum of alternating subsequence of a.


1 2
2 -1 3


Login to submit.


61% Solution Ratio
Riaz_BSMRSTUEarliest, May '20
RamprosadGFastest, 0.1s
Riaz_BSMRSTULightest, 131 kB
MehrabShortest, 359B
Toph uses cookies. By continuing you agree to our Cookie Policy.