Cod sursa(job #325106)
Utilizator | Iordache Bogdan Ieew | Data | 18 iunie 2009 22:07:36 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.59 kb |
#include <fstream>
using namespace std;
#define InFile "ssm.in"
#define OutFile "ssm.out"
int si,sf,sol,n;
int main()
{int i,j=1,x;
int max=0;
ifstream in(InFile);
in>>n;
in>>max;
sol=max;
for(i=2;i<=n;i++)
{
in>>x;
if(sol<max){sol=max;si=j;sf=i-1;}
if(max+x>x)max=max+x;
else
{
j=i;
max=x;
}
}
if(sol<max){sol=max;si=j;sf=i-1;}
in.close();
ofstream out(OutFile);
out<<sol<<' '<<si<<' '<<sf<<'\n';
out.close();
return 0;
}