Cod sursa(job #1795697)

Utilizator Diana-LaviniaPrepelita Diana-Lavinia Diana-Lavinia Data 2 noiembrie 2016 19:56:32
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main()
{
int n,smax,vmax,i,ps,pd,s,st,p,a;
 fin>>n;
 s=0;
 st=1;vmax=-2000000000;smax=-2000000000;
 for(i=1;i<=n;i++)
 {
     fin>>a;
     if(a>vmax) {
            vmax=a;
     p=i;
     }
     s=s+a;
     if(s>=0)
    {
    if(s>smax) {
        smax=s;
        ps=st;
        pd=i;
    }
     }
    if(s<=0){
        s=0;
        st=i+1;
    }
 }
 if(smax<0) fout<<vmax<<" "<<p<<" "<<p;
 else fout<<smax<<" "<<ps<<" "<<pd;
 fin.close();
 fout.close();
 return 0;
}