Cod sursa(job #1263924)

Utilizator BlackNestaAndrei Manaila BlackNesta Data 15 noiembrie 2014 11:42:13
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
//#include <iostream>

using namespace std;
ifstream fin("sminus.in");
ofstream fout("sminus.out");

int a[100005];
int main()
{
    int n,i,smax,s,p1,p2,p,sf,sum=0;
    p1 =1; p2=1;
    s = 0;
    smax = 0;
    fin>>n;
    for(i=1;i<=n;i++)
    {
    fin>>a[i];
    sum=sum+a[i];
    s +=a[i];
    if(s<0)
    {
        p = i;
        s = 0;
    }
    if (s>smax)
    {
    p2 = i;
    p1 =p+1;
    smax = s;
    }
    }
    sf=sum-2*smax;
    fout<<p1<<" "<<p2<<"\n";
    fout<<sf<<"\n";
    fout.close();
    //cout<<smax;
    fout.close();
    return 0;
}