Cod sursa(job #1576972)

Utilizator mihai2003LLL LLL mihai2003 Data 23 ianuarie 2016 07:53:48
Problema Secventa 2 Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
int sp[50001];
int main()
{
    FILE *fin,*fout;
    fin=fopen("secv2.in","r");
    fout=fopen("secv2.out","w");
    int n, k, x, i, sc, sm, pc, pm, um;
    fscanf(fin, "%d%d", &n, &k );
    for( i=1; i<=k; i++ )
        fscanf(fin, "%d", &x ), sp[i]=sp[i-1]+x;
    sc=sm=sp[k];
    pc=pm=1;
    um=k;
    for( i=k+1; i<=n; i++ )
    {
        fscanf(fin, "%d", &x );
        sp[i]=sp[i-1]+x;
        if( sp[i]-sp[i-k]>sc+x )
            pc=i-k+1, sc=sp[i]-sp[i-k];
        else
            sc+=x;
        if( sc>sm )
            sm=sc, pm=pc, um=i;
    }
    fprintf(fout, "%d %d %d", pm, um, sm );
    return 0;
}