Cod sursa(job #1268040)

Utilizator A63N7pTudor Nazarie A63N7p Data 20 noiembrie 2014 16:21:40
Problema Subsecventa de suma maxima Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
using namespace std;

#define Inf 0x3f3f3f3f

ifstream in;
ofstream out;

long long n, s, x, i1, mx, st, sf;

int main(int argc, char *argv[])
{
    in.open("ssm.in");
    out.open("ssm.out");
    in >> n;
    mx = -Inf;
    i1 = 1;

    for (int i = 1; i <= n; i++) {
        in >> x;
        if (s < 0) {
            s = x;
            i1 = i;
        } else {
            s += x;
        }
        if (mx < s) {
            mx = s;
            st = i1;
            sf = i;
        }
    }
    out << mx << " " << st << " " << sf;
    in.close();
    out.close();
    return 0;
}