Cod sursa(job #96876)

Utilizator pandaemonAndrei Popescu pandaemon Data 3 noiembrie 2007 23:17:03
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <stdio.h>

FILE*fin=fopen("secv2.in","r");
FILE*fout=fopen("secv2.in","w");

long n,k,i,j,suma=-2000000000,ind1,ind2,cur,var,v[50001];


void SumaK(int i,int k)
{cur=0;
while(k) {cur+=v[i++]; k--;}
}

void inline comp()
{ if(cur>suma) {ind1=i; ind2=j; suma=cur;} }

int main()
{
fscanf(fin,"%ld %ld",&n,&k);

for(i=1;i<=n;i++) fscanf(fin,"%ld",&v[i]);

j=n; var=n;
for(i=1;i<=n-k+1;i++) {SumaK(i,k); comp();
for(j=i+k;j<=var;j++)   {cur+=v[j]; comp();}
	   var=ind2;         }

fprintf(fout,"%ld %ld %ld",ind1,ind2,suma); }