Cod sursa(job #342641)

Utilizator AstronothingIulia Comsa Astronothing Data 22 august 2009 17:44:26
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;

int v[6000001];

int main()
{
    fstream f("ssm.in",ios::in);
    fstream f2("ssm.out",ios::out);
    int n;
    f>>n;
    //v = new int[n];
    for(int i=0;i<n;++i) f>>v[i];

    int bstart = 0, bend = 0, bsum = v[0];
    int lastsum = v[0], lastind = 0;
    for(int i=1; i<n; ++i)
    {
        if(lastsum>0) lastsum += v[i];
        else { lastsum = v[i]; lastind = i; }
        if(lastsum>bsum)
        {
            bsum = lastsum;
            bend = i;
            bstart = lastind;
        }
    }
    f2<<bsum<<" "<<bstart+1<<" "<<bend+1;

    return 0;
}