Cod sursa(job #916579)

Utilizator Walrus21andrei Walrus21 Data 16 martie 2013 17:53:57
Problema Secventa 2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <stdio.h>

using namespace std;

FILE *f=fopen("secv2.in","r");
FILE *g=fopen("secv2.out","w");

int i,j(1),p1(1),p2,v[50000],N,K,S,s,SUM,sum;

int main()
{
    fscanf(f,"%d%d",&N,&K);
    for(i=1;i<=N;i++)
     {fscanf(f,"%d",&v[i]); if(i<=K) S+=v[i];}
    SUM=S; s=SUM; sum=v[1]; p2=K;
    S-=v[1];
    for(i=2;i<=N-K+1;i++)
    {
        if(sum>=0) sum+=v[i];
        else {sum=v[i]; j=i;}
        S+=v[i+K-1]-v[i];
        SUM=S+sum;
        if(SUM>s) {s=SUM; p1=j; p2=i+K-1;}
    }
    fprintf(g,"%d %d %d",p1,p2,s);
    return 0;
}