Cod sursa(job #2509567)
Utilizator | Data | 14 decembrie 2019 13:15:31 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.56 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main()
{
int i, n, M, p, st, dr, s, x;
fin >> n;
fin >> x;
s=M=x;
st=dr=p=1;
if(s<0)
{
s=0;
p=2;
}
for(i=2; i<=n; i++)
{
fin >> x;
s+=x;
if(M<s)
{
M=s;
st=p;
dr=i;
}
if(s<0)
{
s=0;
p=i+1;
}
}
fout << M << " " << st << " " << dr;
return 0;
}