Cod sursa(job #2550404)

Utilizator foodinatorfoodinator foodinator Data 18 februarie 2020 19:41:56
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <fstream>
using namespace std;
int n,i,x,q,mx,st,fi,start, stop,a[6000100];
ifstream in("ssm.in");
ofstream out("ssm.out");
int main()
{
    in>>n;st=1;
    for (i=1;i<=n;i++)
    {
        in>>x;a[i]=x;
        if (q+x>x) {q=q+x;fi=i;}
        else {q=x;fi=i;}
        if (q>mx) {mx=q;stop=fi;}
    }
    out<<mx<<" ";i=stop;
    if (mx<0) while (mx<0) {mx-=a[i];i--;}
    else while (mx>0) {mx-=a[i];i--;}
    while (a[i]==0) i--;
    out<<i+1<<" "<<stop;
}