Cod sursa(job #2914722)

Utilizator superffffalexandru radu superffff Data 20 iulie 2022 21:28:59
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
#include <fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int a[6000006],b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,S,t,T,x,y,z,ok,nr,C,poz,Max;
int main()
{
   in>>n;
   int st=1;
   int dr=n;
   s=0;
   l=0;
   Max=-999999999;
   for(i=1;i<=n;i++){
    in>>a[i];
   }
   for(i=1;i<=n;i++){
    if(a[i]>s+a[i]) {
        s=a[i];
    }
    else s=s+a[i];

    if(s>Max) {
        Max=s;
        dr=i;
    }
   }
   out<<Max<<" ";
   Max=-999999999;
   s=0;
    for(i=dr;i>=1;i--){
        s=s+a[i];
        if(s>Max) {
                Max=s;
                st=i;}
    }
    out<<st<<" "<<dr;
    return 0;
}