Cod sursa(job #2699808)

Utilizator AndreiStreheStreche Andrei Claudiu AndreiStrehe Data 25 ianuarie 2021 21:54:14
Problema Subsecventa de suma maxima Scor 15
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.04 kb
#include <fstream>

using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int i,n,sumamaxima,st,dr,stanga,dreapta,subsecventa,subsecventaprec,nr,nrprec;
//int nr[6000005];

int main()
{
    f>>n>>nr;

    sumamaxima=nr;
    st=1;
    dr=1;

    for(i=2;i<=n;i++)
    {
        f>>nr;
        subsecventa=nr;

        if(subsecventa<subsecventaprec+nr)
        {
            subsecventa=subsecventaprec+nr;
            if(nrprec==0)
            {
                st=i-1;
            }
        }
        else
        {
            st=i;
            dr=i;
        }

        if(subsecventa>sumamaxima)
        {
            sumamaxima=subsecventa;
            dr=i;
            stanga=st;
            dreapta=dr;
        }
        subsecventaprec=subsecventa;
        nrprec=nr;
    }

    st=stanga;
    dr=dreapta;

  /*  while(nr[st-1]==0 && st>=2)
    {
        st--;
    }
    while(nr[dr+1]==0 && dr<n)
    {
        dr++;
    } */

    g<<sumamaxima<<" "<<st<<" "<<dr;

    return 0;
}