Cod sursa(job #1812072)

Utilizator bobotheslayerBogdan Zaharia bobotheslayer Data 21 noiembrie 2016 20:17:26
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <iostream>
#include <cstdio>
#define MAX_N 6000000
using namespace std;

int v[MAX_N];
int main()
{
    FILE *intrare,*iesire;
    int i,n,minim=MAX_N,maxim=-99999999,st=0,fin=0,indice=0;
    intrare=fopen("ssm.in","r");
    iesire=fopen("ssm.out","w");
    fscanf(intrare,"%d",&n);
    for (i=1; i<=n; ++i)
        fscanf(intrare,"%d",&v[i]);
    for (i=1; i<=n; ++i)
    {
        v[i]=v[i]+v[i-1];
        if (v[i]-minim>maxim)
        {
            maxim=v[i]-minim;
            st=indice+1;
            fin=i;
        }
        if (v[i]<minim)
        {
            minim=v[i];
            indice=i;
        }
    }
    fprintf(iesire,"%d %d %d",maxim,st,fin);
}