Cod sursa(job #2102224)

Utilizator elenaisaiaElena Isaia elenaisaia Data 8 ianuarie 2018 15:48:42
Problema Subsecventa de suma maxima Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <iostream>
#include <fstream>
using namespace std;
long long n,s[6000010],a[6000010];
int x=0,y=0,sum;

void citire()
{
    ifstream fin("ssm.in");
    fin>>n;
    for(int i=1;i<=n;++i)
        fin>>a[i];
}

void subsecv()
{
    int min=0,indx=0;
    sum=a[1];
    s[1]=a[1];
    for(int i=2;i<=n;++i)
    {
        s[i]=s[i-1]+a[i];
        if(sum<s[i]-min)
        {
            sum=s[i]-min;
            x=indx+1;
            y=i;
        }
        if(min>s[i])
        {
            min=s[i];
            indx=i;
        }
    }
}
int main()
{
    citire();
    y=0; x=0;
    subsecv();
    ofstream fout("ssm.out");
    fout<<sum<<" "<<x<<" "<<y;
    return 0;
}