Cod sursa(job #377894)
Utilizator | Data | 26 decembrie 2009 20:12:05 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.63 kb |
#include<fstream>
using namespace std;
int besti,i,n,s,a,best,pozi,pozfi,pozf,bestsum,lungime;
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
f >> n;
f >> a;
besti=a;bestsum=a;pozi=1;pozfi=pozf=1;
for (i=2;i<=n;i++)
{ f >> a;
best=a;
if (best<=besti+a)
best=besti+a;
else
pozi=i;
besti=best;
if (bestsum<best)
{bestsum=best;
pozfi=pozi;
pozf=i;
}
}
g << bestsum << " " << pozfi << " " << pozf;
return 0;
}