Cod sursa(job #2490638)

Utilizator Marioo2Pop Vasile Marioo2 Data 10 noiembrie 2019 16:55:14
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.78 kb
#include <iostream>
#include <cmath>
#include <fstream>
using namespace std;
long long  v[90000000],n,maxx,smax,s,a,b,ok,cont,c,p,u,pc;
int main()
{
    ifstream fin("ssm.in");
    ofstream fout("ssm.out");
    fin>>n;
    for(int i=1; i<=n; i++)
        fin>>v[i];
    smax=v[1];
    s=v[1];
    if(s<0)
        s=0;
    for(int i=2; i<=n; i++)
    {
        if(ok==0)
            a=i;
        s=s+v[i];
        cont++;
        if(s>smax)
        {
            p=pc;
            c=cont;
            smax=s;
            b=i;
        }
        else
        {
            ok=0;
            if(s<0)
            {
                pc=i;
                s=0;
                ok=1;
            }
        }
    }
    fout<<smax<<' '<<p+1<<' '<<b;
    return 0;
}