Cod sursa(job #492426)

Utilizator miticaMitica mitica Data 14 octombrie 2010 15:39:27
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

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

int s[6000005],n,i,sum=-int(2e9),minim,x,st,dr;

int main()
{
    ifstream f(iname);
    f>>n;
    for (i=1;i<=n;++i)
        f>>s[i];
    for (i=1;i<=n;++i)
        {
            s[i]=s[i]+s[i-1];
            if (sum<s[i]-minim)
                sum=s[i]-minim, st=x+1, dr=i;
            if (minim>s[i])
                minim=s[i], x=i;
        }
    ofstream g(oname);
    g<<sum<<" "<<st<<" "<<dr;
    f.close();
    g.close();
    return 0;
}