Cod sursa(job #1645958)

Utilizator tudordariusCardas Tudor-Darius tudordarius Data 10 martie 2016 14:28:59
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>
#include <climits>

using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,i,s,x,OK,summax,poz1,poz2,POZ1,POZ2,poz,maxx;
int main()
{
    maxx=INT_MIN;
    fin>>n;
    poz1=1;
    for(i=1;i<=n;i++)
    {
        fin>>x;
        if(x==0)
            OK=1;
        if(x>maxx)
            {maxx=x;poz=i;}
        if(s+x>=0)
            {s+=x;poz2=i;}
        else
            {s=0;poz1=i+1;}


        if(s>summax)
            {summax=s;POZ1=poz1;POZ2=poz2;}
    }
    if(summax==0&&OK==0)
        fout<<maxx<<" "<<poz<<" "<<poz;
    else
        fout<<summax<<" "<<POZ1<<" "<<POZ2;

    return 0;
}