Cod sursa(job #984592)

Utilizator sebinechitasebi nechita sebinechita Data 14 august 2013 20:59:50
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 1.11 kb
#include <iostream>
#include <fstream>
#include <cstring>
#include <string>
#include <climits>
#include <algorithm>
#include <cmath>
using namespace std;



ifstream fin ("ssm.in");
ofstream fout("ssm.out");
#define MAX 6000004

long long int i,n,u=0,l=0;
int a[MAX];


int main()
{
    fin>>n;
    long long int min=LONG_LONG_MAX, max=LONG_LONG_MIN;
    bool g=0;
    for(i=1;i<=n;i++)
    {
        fin>>a[i];
        if(a[i]>0)
            g=1;
    }
    if(g)
    {
        for(i=1;i<=n;i++)
        {
            a[i]+=a[i-1];
            if(a[i]>max)
            {
                max=a[i];
                u=i;
            }
        }
        for(i=0;i<=u;i++)
        {
            if(a[i]<min)
            {
                min=a[i];
                l=i;
            }
        }
        l++;
    }
    else
    {
        for(i=1;i<=n;i++)
        {
            if(a[i]>max)
            {
                max=a[i];
                u=i;
            }
        }
        min=0;
        l=u;
    }



    fout<<max-min<<" "<<l<<" "<<u;




    return 0;
}