LearnToCP
Prijavi se
Navigacija
PočetnaRoad-mapaProblemiO Nama
Teorija
Osnove
Tvoj Prvi ProgramTipovi podataka, Unos i IzlazC++ sintaksaModuloFunkcijeVektoriMatriceVremenska Složenost Algoritma
Sortiranje
SortiranjeSortiranje PrebrojavanjemRadix Sort
Tehnike Optimizacije
Dva PokazivačaZbir brojeva od 1 do nZbir PrefiksaBinarna PretragaPohlepni AlgoritmiFunkcije Binarne Pretrage
Binarni Brojevi
Binarni BrojeviBrojevi u koduOperacije nad Bitovima
Matematika
Binarno StepenovanjeProsti BrojeviRastavljanje na proste činioceNZD i NZSEratostenovo Sito
Strukture Podataka
Niske (Stringovi)StekRed
Dinamičko Programiranje
O DP-uDP problemi

Maksimalni zbir segmenta

EasyProblem #19
VremeMemorijaUlazIzlaz
1 s64 MBstdinstdout

Najbolji segment može sadržati negativne brojeve.

Dat je niz a od n celih brojeva. Segment niza čini grupa uzastopnih elemenata sa bar jednim elementom. Tvoj zadatak je da odrediš najveći mogući zbir segmenta datog niza.

Ulaz

U prvoj liniji je jedan ceo broj t - broj test primera.

  • U prvoj liniji svakog test primera je ceo broj n - broj elemenata.
  • U sledećoj liniji je n celih brojeva a0​,a1​,…,an−1​ - elementi niza.

Izlaz

Za svaki test primer ispiši u posebnoj liniji najveći zbir segmenta.

Primer

Input
2
6
2 -3 4 -1 3 -2
3
-5 -2 -8
Output
6
-2

U prvom test primeru najbolji segment je [4,−1,3] sa zbirom 6. U drugom test primeru je svaki element negativan, pa je najbolji segment jedan jedini element [−2].

Ograničenja

1≤t≤1000
1≤n≤2⋅105
−109≤ai​≤109
n1​+n2​+…+nt​≤2⋅105


Zadatak je, uz dozvolu, preuzet iz zadatka Maksimalni zbir segmenta, čiji su autori Društvo matematičara Srbije i Fondacija Petlja.

Pošalji svoje rešenje

Prijavi se da pošalješ rešenje i pratiš svoj napredak.

Prijavi se