Cod sursa(job #2289502)

Utilizator dickmeister191Nicu Tkacenko dickmeister191 Data 24 noiembrie 2018 18:12:17
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <bits/stdc++.h>
using namespace std;

int n, s[6000010], suma, sumamax, inceput, sfarsit, inceput1;
ifstream fin("ssm.in");
ofstream fout("ssm.out");

int main(){
    fin >> n;
    for (int i=1; i<=n; i++) fin >> s[i];
    suma = s[1];
    sumamax = s[1];
    inceput = 1;
    sfarsit = 1;
    for (int i=2; i<=n; i++){
        if (suma >= 0) suma += s[i];
        else{
            suma = s[i];
            inceput = i;
        }
        if (suma > sumamax) sfarsit = i, sumamax = suma,inceput1 = inceput;

    }
    fout << sumamax << " " << inceput1 << " " << sfarsit;
    return 0;
	}