Cod sursa(job #2787611)
Utilizator | Papuc Stefan dotyzebra775 | Data | 23 octombrie 2021 19:11:57 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.66 kb |
#include <fstream>
#define N 6000005
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, a[N];
int main()
{
int i, p, u, aux;
fin >> n;
for(i = 1; i <= n; ++ i)
fin >> a[i];
int smax, s;
smax = s = a[1];
for(i = 2; i <= n; ++ i)
{
if(s < 0)
{
s = a[i];
aux = i;
}
else
s += a[i];
if(s > smax)
{
smax = s;
p = aux;
u = i;
}
}
fout << smax << " " << p << " " << u;
return 0;
}