Cod sursa(job #3228828)
Utilizator | Data | 11 mai 2024 16:20:00 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <bits/stdc++.h>
#define NMAX 6000001
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
long long a[NMAX], sp, sMin, sMax = LLONG_MIN;
int n, i, Inc, Sf;
int main()
{
f >> n;
for (int i = 1; i <= n; i++)
f >> a[i];
int j = 1;
for (int i = 1; i <= n; i++)
{
sp += a[i];
if (sMax < sp - sMin)
sMax = sp - sMin, Inc = j+1, Sf = i;
if (sMin > sp)
sMin = sp, j = i;
}
g << sMax << ' ' << Inc << ' ' << Sf << '\n';
return 0;
}