Cod sursa(job #2766621)

Utilizator BlueLuca888Girbovan Robert Luca BlueLuca888 Data 2 august 2021 15:58:38
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin  ("ssm.in");
ofstream fout ("ssm.out");

int n, v[6000005];
long long crt, sol;
int st, dr, solst, soldr;

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

    crt = sol = v[1];
    st = dr = solst = soldr = 1;
    for(int i=2; i<=n; i++){
        if(crt + v[i] >= v[i]){
            crt += v[i];
            dr=i;
        }else{
            crt=v[i];
            st=dr=i;
        }

        if(crt > sol){
            sol=crt;
            solst=st;
            soldr=dr;
        }
    }

    fout<<sol<<" "<<solst<<" "<<soldr;
    return 0;
}