Cod sursa(job #1939073)

Utilizator ana.vitAna-Maria Vit ana.vit Data 25 martie 2017 13:48:12
Problema Subsecventa de suma maxima Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int a[60000003], s[60003];
int main()
{
    int Max = INT_MIN, N, Min = INT_MAX, st , dr , x, i , j;
    fin >> N;
    for(int i = 0; i < N; i++)
        fin >> a[i];
    for(int i = 1; i < N; i++)
    {
        s[i] = s[i-1] + a[i];
        if(s[i-1] < Min)
        {
            Min = s[i];
            x = i-1;
        }
        if(s[i] - Min > Max)
        {
            Max = s[i] - Min;
            st = x;
            dr = i;
        }
    }
    fout << Max << " " << st+3<< " " << dr+1;

    fin.close();
    fout.close();

    return 0;
}