Cod sursa(job #577466)

Utilizator Andy_MascaMasca Andrei Andy_Masca Data 10 aprilie 2011 12:19:48
Problema Subsecventa de suma maxima Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>
#define Nmax 6000000
using namespace std;
int n,i,i1,v[Nmax],Smax,S,i2;
int main()
{
    ifstream fin("ssm.in");
    ofstream fout("ssm.out");
    fin>>n;
    for(i=1;i<=n;++i)
        fin>>v[i];
    Smax=v[1];
    S=v[1];
    for(i=2;i<=n;++i)
         {
         S+=v[i];
         if(S<0)
            {
            S=0;
            i1=i;
            }
         if(S>Smax)
            {
            Smax=S;
            i2=i;
            }
         }
    fout<<Smax<<" ";
    if(i1!=0)
       fout<<i1+1<<" "<<i2;
         else fout<<"1 "<<i2;
}