Cod sursa(job #1604330)

Utilizator Marius7122FMI Ciltea Marian Marius7122 Data 18 februarie 2016 09:58:09
Problema Secventa 2 Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <stdio.h>
unsigned n,k,i,j,I,J,imax,jmax;
int v[50001];
long max=-25000000,sk,sp,spm;

int main()
{
    FILE *f1,*f2;
    f1=fopen("secv2.in","r");
    f2=fopen("secv2.out","w");
    fscanf(f1,"%u%u",&n,&k);
    for(i=0;i<n;i++)
        fscanf(f1,"%d",&v[i]);
    for(i=0;i<k;i++)
        sk+=v[i];
    for(i=k-1;i<n;i++)
    {
        sp=spm=sk;
        I=i-k+2;
        J=i+1;
        for(j=i+1;j<n;j++)
        {
            sp+=v[j];
            if(sp>spm)
            {
                spm=sp;
                J=j+1;
            }
        }
        if(spm>max)
        {
            max=spm;
            imax=I;
            jmax=J;
        }
        sk=sk+v[i+1]-v[i-k+1];
    }
    fprintf(f2,"%u %u %ld",imax,jmax,max);
    return 0;
}