Cod sursa(job #282312)
Utilizator | Data | 17 martie 2009 13:20:37 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.53 kb |
#include<iostream.h>
#include<fstream.h>
long b[101],n;
ifstream f("sam.in");
ofstream h("sam.out");
void citire()
{f>>n; long i;
for(i=1;i<=n;i++)
f>>b[i];
}
void lini()
{
long bestSum = b[1], min = 0,i,id,jd,idx;
for (i = 1; i <= n; ++ i)
{
b[i] += b[i - 1];
if (bestSum < b[i] - min)
{ bestSum = b[i] - min ;id=idx;jd=i;}
if (min > b[i])
{min = b[i];idx=i+1;}
}
h<<bestSum<<" "<<id<<" "<<jd;
}
int main()
{citire();
lini();
return 0;
}