Cod sursa(job #2737922)

Utilizator ShadowZoidPorojan Victor-Andrei ShadowZoid Data 5 aprilie 2021 12:21:20
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
//Varianta 2
#include <fstream>
using namespace std;

#define NMAX 6000005
#define INFINIT 2000000000

int v[NMAX], s, n, smax=-INFINIT, st, dr, minim,poz;
ifstream fin("ssm.in");
ofstream fout("ssm.out");

int main()
{
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>v[i];

    }
    s=v[1];smax=s;
    int st1=1;
    st=1,dr=1;
    for(int i=2;i<=n;i++)
    {
        if(s+v[i]>=v[i])
            s=s+v[i];
        else
            {
                s=v[i];
                st1=i;
            }
      if(s>smax)
      {
          smax=s;
          dr=i;
          st=st1;
      }

    }
    fout<<smax<<" "<<st<<" "<<dr;
}