Cod sursa(job #829984)
Utilizator | szabo david emanuel david95 | Data | 6 decembrie 2012 09:35:14 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 45 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include<fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int suma, n, k, v[100000], st, dr, i;
int smax = -200000;
int main()
{
fin >> n;
for( i = 1; i <= n; ++i )
fin>> v[i];
for( i = 1; i <= n; ++i )
{
if( suma < 0 )
{
suma = v[i];
k = i;
}
else
suma = suma + v[i];
if( smax < suma )
{
smax = suma;
st = k;
dr = i;
}
}
fout << smax <<' '<< st <<' '<< dr;
fout.close();
return 0;
}