Cod sursa(job #530244)
Utilizator | Data | 7 februarie 2011 12:02:52 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int main()
{
int n,a[100],smax,pm=0,lgm=1,sc,pc=0,i,lgc=1,uc=0,um=0;
in>>n;
for(i=0;i<n;i++)
in>>a[i];
smax=a[0];sc=a[0];
for(i=1;i<n;i++)
{
if(sc<=0){sc=a[i];pc=i;lgc=1;uc=i;}
else {sc+=a[i];lgc++;uc=i;}
if(smax<sc){smax=sc;lgm=lgc;pm=pc;um=uc;}
}
out<<smax<<' '<<pm<<' '<<um<<'\n';
return 0;
}