Cod sursa(job #1769177)

Utilizator caesar2001Stoica Alexandru caesar2001 Data 1 octombrie 2016 23:51:49
Problema Secventa 2 Scor 10
Compilator c Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <stdio.h>
#include <stdlib.h>
FILE *in,*out;
sum[50001];
int main()
{
    in = fopen("secv2.in","r");
    out = fopen("secv2.out","w");
    int n,k,i,sc = 0,x,smax = -2147483646,p = 0,pmax = 0,umax = 0;
    fscanf(in,"%d %d\n",&n,&k);
    for(i = 1;i <= n;i ++)
    {
        fscanf(in,"%d",&x);
        sum[i] = sum[i-1] + x;
        p = i;
        sc = sc + x;
        if(i >= k)
        {
            if(sc > smax)
            {
                smax = sc;
                umax = i;
                pmax = i-k+1;
            }
            if(sum[i] - sum[i-k] > smax)
            {
                smax = sum[i] - sum[i-k];
                umax = i;
                pmax = i-k + 1;
            }
        }
    }
    fprintf(out,"%d %d %d",pmax,umax,smax);
    return 0;
}