Cod sursa(job #2173293)

Utilizator Groza_Iulia_DianaGroza Iulia Diana Groza_Iulia_Diana Data 15 martie 2018 21:32:23
Problema Subsecventa de suma maxima Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>
#include <cstdio>
#include <climits>

using namespace std;
//ifstream fin("elmaj.in");
//ofstream fout("elmaj.out");

int n, i, Min=INT_MAX, bestSum=-INT_MAX, x1, x2, y, a[6000005];

int main()
{
    freopen("ssm.in", "r", stdin);
    freopen("ssm.out", "w", stdout);
    scanf("%d", &n);
    for(i=1; i<=n; i++)
        scanf("%d", &a[i]);
    for(i=1; i<=n; i++)
    {
        a[i]+=a[i-1];
        if(a[i]-Min>bestSum)
        {
            bestSum=a[i]-Min;
            x2=x1+1;
            y=i;
        }
        if(a[i]<Min)
        {
            Min=a[i];
            x1=i;
        }
    }
    printf("%d %d %d", bestSum, x2, y);
    fclose(stdin);
    fclose(stdout);
    return 0;
}