Cod sursa(job #1592665)

Utilizator dorumusuroiFMI - Doru Musuroi dorumusuroi Data 7 februarie 2016 20:36:24
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.86 kb
#include <iostream>
#include <fstream>
#include <limits>
using namespace std;

const char iname[] = "ssm.in";
const char oname[] = "ssm.out";

int n;

int main()
{
    int st, ed, sum = 0, maxsum = -100000000;
    int stcrt;
    ifstream in(iname);
    ofstream out(oname);
    int aux;
    st = stcrt = 1;
    in >> n;
    for(int i = 0; i < n; ++i){
            in >> aux;
            if(sum + aux >= aux){
                sum += aux;
                if(sum > maxsum){
                    maxsum = sum;
                    ed = i+1;
                    st = stcrt;
                }
            }
            else{
                sum = aux;
                stcrt = i+1;
            }
    }
    if(sum > maxsum){
        maxsum = sum;
        ed = n;
        st = stcrt;
    }
    out << maxsum << ' ' << st << ' ' << ed;
    return 0;
}