█████████ ████ ███░░░░░███ ░░███ ███ ░░░ ██████ ███████ ██████ ██████ ░███ ███░░███ ███░░███ ███░░███ ███░░███ ░███ ░███ ░███░███ ░███ ░███████ ░███ ░███ ░░███ ███░███ ░███░███ ░███ ░███░░░ ░███ ░███ ░░█████████ ░░██████ ░░████████░░██████ ░░██████ ░░░░░░░░░ ░░░░░░ ░░░░░░░░ ░░░░░░ ░░░░░░

Envío 5377

Problema 0x94 - Subarreglo de máxima suma

  • Autor: NellerP21
  • Fecha: 2021-12-04 21:42:45 UTC (Hace alrededor de 3 años)
Caso # Resultado Tiempo Memoria
#1
Correcto
0.005 s 0 KBi
#2
Correcto
0.006 s 3 KBi
#3
Correcto
0.003 s 0 KBi
#4
Correcto
0.005 s 0 KBi
#5
Correcto
0.008 s 1 KBi
#6
Correcto
0.004 s 0 KBi
#7
Correcto
0.006 s 4 KBi
#8
Correcto
0.005 s 13 KBi
#9
Correcto
0.002 s 6 KBi
#10
Correcto
0.005 s 3 KBi
#11
Correcto
0.006 s 16 KBi
#12
Correcto
0.001 s 27 KBi
#13
Correcto
0.006 s 7 KBi
#14
Correcto
0.003 s 0 KBi
#15
Correcto
0.002 s 33 KBi
#16
Correcto
0.005 s 10 KBi
#17
Correcto
0.03 s 1 KBi
#18
Correcto
0.009 s 1 KBi
#19
Correcto
0.023 s 1 KBi
#20
Correcto
0.006 s 1 KBi
#21
Correcto
0.017 s 1 KBi
#22
Correcto
0.007 s 1 KBi
#23
Correcto
0.01 s 1 KBi
#24
Correcto
0.007 s 1 KBi
Puntos totales: 100 / 100

Código

#include<bits/stdc++.h>

using namespace std;

#define el "\n"
#define forn(n) for(int i = 0; i < n; ++i)

typedef long long ll;

int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	int n; cin>>n;
	vector<ll> a(n+1);

	forn(n){
		cin>>a[i];
	}

	long long minimo = 0;
	long long best = INT_MIN;
	long long sum = 0;

	forn(n){
		sum += a[i];
		best = max(best, sum - minimo);
		minimo = min(minimo, sum); 
	}

	cout<< best <<el;

	return 0;
}