Cod sursa(job #1234905)

Utilizator PregatireDanielStefanescu Vlad PregatireDaniel Data 28 septembrie 2014 12:16:18
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<cstdio>
#include<climits>
using namespace std;
int main(){
    FILE *in=fopen("ssm.in","r"),*out=fopen("ssm.out","w");
    int m=INT_MIN,s=0,n,a,i1,i2,j;
    int v[6000002];
    fscanf(in,"%d",&n);

    v[0]=0;
    for(int i=1;i<n+1;i++){
        fscanf(in,"%d",&a);
        v[i] = v[i-1] + a;
    }

    m = v[1];

    for(int i=1;i<n+1;i++){
        for(int j=i;j<n+1;j++){
            if (v[j] - v[i-1] > m) {
                m = v[j] - v[i-1];
                i1=i;
                i2=j;
            }
        }
    }
    fprintf(out,"%d %d %d",m,i1,i2);
    return 0;
}