Cod sursa(job #730107)

Utilizator FayedStratulat Alexandru Fayed Data 4 aprilie 2012 14:47:33
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include<fstream>
#define Nmax 6000001
using namespace std;

int n,V[Nmax];
int st,poz,lg,Smax,sum;
ifstream f("ssm.in");
ofstream g("ssm.out");

int main()
{
    f>>n;
  for(st=1;st<=n;++st)
    f>>V[st];
int i;
Smax=sum=V[1];
for(st=poz=1,lg=i=2;i<=n;++i)
{
  if(sum<0)
{
    sum=V[i];
st=i;
}
else{
         sum+=V[i];
if(sum>Smax)
{
    Smax=sum;
    poz=st;
    lg=i-st;
}
        }


}

g<<Smax<<" "<<poz<<" "<<poz+lg;

f.close();
g.close();
return 0;
}