Cod sursa(job #2474650)

Utilizator AndreiDeltaBalanici Andrei Daniel AndreiDelta Data 15 octombrie 2019 17:53:08
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <bits/stdc++.h>
#define Dim 6000001
using namespace std;
typedef long long ll;
ifstream f("ssm.in");
ofstream g("ssm.out");
ll N,x,S,stop,lg,Smax,poz,lg_max;

int main()
{
    f>>N>>x;
    poz=1; lg=1; S=x;
    stop=1; Smax=x; lg_max=1;

    for(int i=2;i<=N;i++)
    {
       f>>x;

       if( S > 0 )
       {
         S+=x;
         lg++;
       }
       else
       {
           S=x;
           lg=1;
           poz=i;
       }

       if( S > Smax )
       {
           Smax=S;
           stop=i;
           lg_max=lg;
       }
    }
    g<<Smax<<" "<<stop-lg_max+1<<" "<<stop;

    return 0;
}