Cod sursa(job #1238802)

Utilizator MarronMarron Marron Data 7 octombrie 2014 18:39:59
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int main()
{
    int n; f >> n;
    int bs = -(1 << 30);
    int s = -1;
    int solst = 1;
    int soldr = 0;
    int st = 1;
    int dr = 0;
    for (int i = 1; i <= n; i++) {
        int x; f >> x;
        if (s >= 0) {
            s += x;
            dr = i;
        } else {
            s = x;
            st = dr = i;
        }
        if (s > bs) {
            bs = s;
            solst = st;
            soldr = dr;
        }
    }


    g << bs << ' ' << solst << ' ' << soldr << endl;



    f.close();
    g.close();
    return 0;
}