Cod sursa(job #1810709)

Utilizator AlexTheDagonBogdan Tudor AlexTheDagon Data 20 noiembrie 2016 14:41:24
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int a[6000001],minn=2000000000,mini,maxx=-2000000000,maxi,l=60000000,minip,n,s=-200000000;
int main()
{
    in>>n;
    for(int i=1;i<=n;++i)
    {
        in>>a[i];
        a[i]+=a[i-1];
    }
    s=a[1];
    maxi=1;
    mini=1;
    minip=1;
    minn=a[1];
    for(int i=2;i<=n;++i)
    {
        if(a[i]<minn)
        {
            minn=a[i];
            mini=i;
        }
        else
        {
            if((a[i]-minn)>s)
            {
                minip=mini+1;
                s=a[i]-minn;
                maxi=i;
            }
        }
    }
    out<<s<<" "<<minip<<" "<<maxi;
    return 0;
}